目录
第一种做法
# -*- coding: utf-8 -*-
"""
Created on Wed Jan 5 23:44:05 2022
"""
#TempConvert.py
TempStr = input("请输入带有符号的温度值:")
if TempStr[-1] in ['f','F']:
C = (eval(TempStr[0:-1]) - 32)/1.8
print("转换后的温度是{:.2f}C".format(C))
elif TempStr[-1] in ['c','C']:
F = 1.8*eval(TempStr[0:-1]) +32
print("转换后的温度是{:.2f}F".format(F))
else:
print("输入格式错误")
这段代码是作业里面原始的代码。
思路:
- 建立一个TempStr变量,这个变量是用户传的温度参数
- 判断:通过参数的最后一位单位,判断如果是华氏温度转为摄氏温度,如果是摄氏温度转为华氏温度。
- 如果用户的传参没有单位,提示给用户“输入格式错误”。
问题:
-
coding: utf-8
能看出来这里是声明了Unicode,不过我不是很明白这里是一个BOM头么?
第二种做法
传参的单位在第一个字符
# -*- coding: utf-8 -*-
"""
Created on Wed Jan 5 23:44:05 2022
"""
#TempConvert2.py
TempStr = input("请输入带有符号的温度值:")
if TempStr[0] in ['f','F']:
C = (eval(TempStr[1:]) - 32)/1.8
print("转换后的温度是{:.2f}C".format(C))
elif TempStr[0] in ['c','C']:
F = 1.8*eval(TempStr[1:]) +32
print("转换后的温度是{:.2f}F".format(F))
elif TempStr[0] not in ['f','F','c','C']:
print("单元缺失,请重新输入。")
else:
print("输入格式错误")
思路:
1、和第一种做法的代码是一样的,区别在于判断条件和切片不同