在Python中进行单位换算,你可以使用内置的数学函数和自定义的函数来实现。以下是一些常见的单位换算示例:
长度单位换算
def length_conversion(value, from_unit, to_unit):if from_unit == "cm":if to_unit == "dm":return value / 10elif to_unit == "m":return value / 100elif to_unit == "km":return value /可以添加更多的单位换算示例使用cm_value = 100to_dm = length_conversion(cm_value, "cm", "dm")print(f"{cm_value} cm is equal to {to_dm} dm")
时间单位换算
def time_conversion(milliseconds):hours = milliseconds /minutes = milliseconds / 60seconds = milliseconds / 3600return hours, minutes, seconds示例使用milliseconds = 66666hours, minutes, seconds = time_conversion(milliseconds)print(f"Milliseconds: {milliseconds}\nHours: {hours}\nMinutes: {minutes}\nSeconds: {seconds}")
数据存储单位换算

class Units(Enum):B = 1KB = 1024 * Units.B.valueMiB = 1024 * Units.KB.valueGB = 1024 * Units.MiB.valueTB = 1024 * Units.GB.valuedef bytes_to_human(n):symbols = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB', 'BB', 'NB', 'DB']prefix = {s: 10 (i + 1) * Units.B.value for i, s in enumerate(symbols)}for symbol in reversed(symbols):if n >= prefix[symbol]:value = n / prefix[symbol]return f"{value:.2f} {symbol}"n %= prefix[symbol]return f"{n:.2f} B"示例使用bytes_value =human_readable = bytes_to_human(bytes_value)print(f"Bytes: {bytes_value}\nHuman readable: {human_readable}")
温度单位换算
def temperature_conversion(celsius, to_unit):if to_unit == "fahrenheit":return celsius * 9/5 + 32可以添加更多的温度单位换算示例使用celsius_value = 25to_fahrenheit = temperature_conversion(celsius_value, "fahrenheit")print(f"{celsius_value}°C is equal to {to_fahrenheit}°F")
以上示例展示了如何在Python中进行基本的长度、时间、数据存储和温度单位换算。你可以根据需要扩展这些函数,添加更多的单位和换算关系
