1. 实现摄氏温度与华氏温度互转(保留两位小数)
2. 扩展功能:输入错误处理(如非数字输入提示重新输入)
3. 扩展:支持开尔文温度的三向转换
def temperature_converter():
print("温度转换器(支持摄氏°C、华氏°F、开尔文K)")
print("=" * 40)
while True:
# 输入原始温度值和单位
try:
temp = float(input("请输入温度值: ").strip())
original_unit = input("请输入原始单位(C/F/K): ").upper().strip()
if original_unit not in ['C', 'F', 'K']:
print("错误:单位必须是C/F/K之一,请重新输入!\n")
continue
# 转换逻辑
if original_unit == 'C':
fahrenheit = (temp * 9/5) + 32
kelvin = temp + 273.15
print(f"\n转换结果:")
print(f"华氏温度: {fahrenheit:.2f}°F")
print(f"开尔文温度: {kelvin:.2f}K")
elif original_unit == 'F':
celsius = (temp - 32) * 5/9
kelvin = celsius + 273.15
print(f"\n转换结果:")
print(f"摄氏温度: {celsius:.2f}°C")
print(f"开尔文温度: {kelvin:.2f}K")
elif original_unit == 'K':
celsius = temp - 273.15
fahrenheit = (celsius * 9/5) + 32
print(f"\n转换结果:")
print(f"摄氏温度: {celsius:.2f}°C")
print(f"华氏温度: {fahrenheit:.2f}°F")
# 询问是否继续
choice = input("\n继续转换?(Y/N): ").upper()
if choice != 'Y':
print("感谢使用温度转换器!")
break
print("=" * 40)
except ValueError:
print("错误:请输入有效的数字!\n")
# 启动转换器
temperature_converter()