🛠️ToolsShed

Convertisseur de taille de bague

Convertit les tailles de bague entre les normes US, EU, UK, Japon et le diamètre en mm.

Ring Size Chart
US / CanadaEU / ISOUK / AU / NZJapanDiameter (mm)
344413.97
3.545514.36
446H614.76
4.547I715.09
549815.7
5.550916.1
651L1016.51
6.5521116.92
7541217.35
7.555N1317.75
856O1418.19
8.5571518.53
9591619.05
9.560Q1719.41
1061R1819.84
10.5621920.2
11632020.68
11.565T2121.08
1266U2221.49
12.567V2321.89
1368W2422.33

Questions Fréquentes

Implémentation du Code

import math

# Ring size conversion tables
# Circumference (mm) → US size
CIRCUMFERENCE_TO_US: list[tuple[float, float]] = [
    (44.2,  3.0), (45.5,  3.5), (46.8,  4.0), (48.0,  4.5),
    (49.3,  5.0), (50.6,  5.5), (51.9,  6.0), (53.1,  6.5),
    (54.4,  7.0), (55.7,  7.5), (57.0,  8.0), (58.3,  8.5),
    (59.5,  9.0), (60.8,  9.5), (62.1, 10.0), (63.4, 10.5),
    (64.6, 11.0), (65.9, 11.5), (67.2, 12.0), (68.5, 12.5),
    (69.7, 13.0),
]

# EU size = circumference rounded to nearest integer (mm)
def circumference_to_eu(mm: float) -> int:
    return round(mm)

# UK letter sizes A–Z (size A = 37mm circumference, each step ≈ 1.25mm)
def circumference_to_uk(mm: float) -> str:
    index = round((mm - 37.0) / 1.25)
    index = max(0, min(index, 25))
    return chr(ord('A') + index)

def diameter_to_circumference(diameter_mm: float) -> float:
    return diameter_mm * math.pi

def circumference_to_diameter(circumference_mm: float) -> float:
    return circumference_mm / math.pi

def circumference_to_us(mm: float) -> float | None:
    """Find closest US ring size for given circumference."""
    best = min(CIRCUMFERENCE_TO_US, key=lambda x: abs(x[0] - mm))
    if abs(best[0] - mm) <= 0.7:  # within ~0.7mm tolerance
        return best[1]
    return None

# Example: convert diameter to all sizes
diameter_mm = 16.5
circumference = diameter_to_circumference(diameter_mm)

print(f"Diameter:       {diameter_mm:.1f} mm")
print(f"Circumference:  {circumference:.1f} mm")
print(f"US size:        {circumference_to_us(circumference)}")
print(f"EU size:        {circumference_to_eu(circumference)}")
print(f"UK size:        {circumference_to_uk(circumference)}")
# Diameter:       16.5 mm
# Circumference:  51.8 mm
# US size:        5.5
# EU size:        52
# UK size:        M

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.