首先根据 IPO 原则构思, 首先观察输入的将是一个华氏度或摄氏度, 而输出则转化为对应的摄氏度或华氏度.
接下来考虑 P 过程, 我们以单位来区分华氏度或摄氏度规定用户的输入, 在 python 中无需声明数据类型, TempStr[-1]的作用是取最后一位字符这与我们规定的输入相关, 根据字符的不同判断其为华氏度或摄氏度, 再执行相应的分支语句. 而 [0:-1] 的意思是将所有字符但不包括最后一位取出来, eval()函数在这里的作用则是将字符转化为可以进行运算的整形 (即去掉分号), 接着由 print 输出结果{:.2f} 即保留小数点后两位. format()的意思是将 C 即上一步的运算结果按照{:.2}进行格式化
elif 同理
else 即当上述的两种判断都不成立时输出
例子代码: #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("输入格式错误")
来源: http://www.bubuko.com/infodetail-3258633.html