Day037.带循环的温度转换

代码如下

'''
    带循环的温度转换。华氏 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
posted @ 2021-06-01 22:44  Notus(Java)  阅读(169)  评论(0编辑  收藏  举报