#以 温度转换 例子展开说明: 公式转换: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’ 所填充的变量去小数点后两位