代码如下
'''
带循环的温度转换。华氏 F 和摄氏温度 C 互转。 F = C * 1.8 + 32, C = (F - 32) / 1.8. 输入 N 或 n 退出程序。
@Ref 2017.Python语言程序设计基础.第2版.嵩天, p44
@Version: v0.1, Python 3.9.5, Notus(hehe_xiao@qq.com), 2021.06.01
@Updated: 2021.06.01
'''
tmpStr = input("请输入带有符号的温度(e.g., 80F or 30C, 输入 N 或 n 结束程序): ")
while tmpStr[-1] not in ['n', 'N']:
if tmpStr[-1] in ['F', 'f']:
C = (eval(tmpStr[0:-1]) - 32) / 1.8
print("转换后的温度是: {:.2f}C.".format(C))
elif tmpStr[-1] in ['C', 'c']:
F = eval(tmpStr[0:-1]) * 1.8 + 32
print("转换后的温度是: {:.2f}F.".format(F))
else:
print("输入格式不正确!")
tmpStr = input("请输入带有符号的温度(e.g., 80F or 30C, 输入 N 或 n 结束程序): ")
输出
请输入带有符号的温度(e.g., 80F or 30C, 输入 N 或 n 结束程序): 80F
转换后的温度是: 26.67C.
请输入带有符号的温度(e.g., 80F or 30C, 输入 N 或 n 结束程序): 30C
转换后的温度是: 86.00F.
请输入带有符号的温度(e.g., 80F or 30C, 输入 N 或 n 结束程序): n