maxwellmogambi commited on
Commit
b3f7a0d
·
verified ·
1 Parent(s): c109176

Create unit_conversion.py

Browse files
Files changed (1) hide show
  1. tools/unit_conversion.py +26 -0
tools/unit_conversion.py ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ class UnitConverter:
2
+ def __init__(self):
3
+ self.conversion_factors = {
4
+ ("miles", "kilometers"): 1.60934,
5
+ ("kilometers", "miles"): 0.621371,
6
+ ("pounds", "kilograms"): 0.453592,
7
+ ("kilograms", "pounds"): 2.20462,
8
+ ("celsius", "fahrenheit"): lambda c: (c * 9/5) + 32,
9
+ ("fahrenheit", "celsius"): lambda f: (f - 32) * 5/9
10
+ }
11
+
12
+ def convert(self, value, from_unit, to_unit):
13
+ key = (from_unit.lower(), to_unit.lower())
14
+
15
+ if key in self.conversion_factors:
16
+ conversion = self.conversion_factors[key]
17
+ result = conversion(value) if callable(conversion) else value * conversion
18
+ return f"{value} {from_unit} is {result:.2f} {to_unit}."
19
+ else:
20
+ return "Sorry, conversion not supported."
21
+
22
+ # Example usage
23
+ if __name__ == "__main__":
24
+ converter = UnitConverter()
25
+ print(converter.convert(5, "miles", "kilometers")) # 5 miles is 8.05 kilometers.
26
+ print(converter.convert(100, "celsius", "fahrenheit")) # 100°C is 212°F.