#以 温度转换 例子展开说明: 公式转换:C = (F -32 ) /1.8
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 ['f','F']: F = eval(TempStr[0:-1]) * 1.8 + 32 print("转换后的的温度是:{:.2f}F".format(F)) else: print("输入有误")运行结果:
请输入带有符号的温度值:25f 转换后的的温度是:-3.89C逐行分析:
TempStr = input("请输入带有符号的温度值:")input() 功能:从控制台获得用户输入的函数 用户所输入的信息以字符串的类型 赋值给 变量 TemStr .
if TempStr[-1] in ['f','F']:该语句判断字符串TemStr 中倒数第一个字符(即温度值的符号),如果是 ‘f’,'F’其中一个则执行 if 所包含的语句,否则跳到下面的 elif 进行下一轮的判断。 TempStr[i] 中 i相当于选取 字符串的第i个元素,-i 则从字符串尾部向前的第i个。(注意!顺序从0 开始,逆序则从-1开始)如下:
拓展 : TempStr[i:k] 选取字符串的一片段,即选取从i到k(不包含k)的字符串片段。 >>>TempStr[1:4] 结果:bcd TempStr[i:k:s] 选取以s为步长的字符串的一片段。 >>>TempStr[1:4:2] 结果:bd
C = (eval(TempStr[0:-1]) - 32) / 1.8-eval() 去掉参数最外侧引号并执行余下语句的函数(只能提取数字!)
print("转换后的的温度是:{:.2f}C".format(C)){}表示槽,后续变量填充到槽中。 ‘:.2f’ 所填充的变量去小数点后两位