```python
def unit_converter():
获取用户输入的数值和单位
value = float(input("请输入你想要转换的数值: "))
original_unit = input("请输入原始单位(如m, kg, cm, in): ")
target_unit = input("请输入目标单位(如ft, lb, km, in): ")
定义转换规则
conversion_factors = {
'm': {'m': 1, 'cm': 100, 'mm': 1000, 'in': 39.3701},
'kg': {'kg': 1, 'g': 1000, 'lb': 2.20462},
'cm': {'cm': 1, 'mm': 0.1, 'in': 0.393701},
'in': {'in': 1, 'cm': 2.54, 'mm': 25.4},
'ft': {'ft': 1, 'in': 12},
'lb': {'lb': 1, 'kg': 0.453592},
'km': {'km': 1, 'm': 1000, 'cm': 100000},
'mm': {'mm': 1, 'cm': 0.1, 'm': 0.001},
'微米': {'微米': 1, '纳米': 1000},
'纳米': {'纳米': 1, '微米': 0.001}
}
检查原始单位和目标单位是否有效
if original_unit not in conversion_factors or target_unit not in conversion_factors:
print("无效的单位,请输入正确的单位。")
return
进行单位转换
converted_value = value * conversion_factors[original_unit][target_unit]
输出转换结果
print(f"{value} {original_unit} = {converted_value} {target_unit}")
调用单位转换函数
unit_converter()
```
代码说明:
获取用户输入:
程序首先通过`input`函数获取用户想要转换的数值和单位。
定义转换规则:
使用一个字典`conversion_factors`来存储不同单位之间的转换因子。
检查单位有效性:
程序检查用户输入的原始单位和目标单位是否在转换规则字典中,如果不在则提示用户输入无效。
进行单位转换:
根据转换规则计算转换后的数值。
输出转换结果:
将转换后的数值和单位打印出来。
这个程序可以处理基本的单位转换,如长度、质量和体积单位之间的转换。如果需要扩展支持更多的单位,只需在`conversion_factors`字典中添加相应的转换因子即可。