1、温度转换I
请编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。
转换算法如下:(C表示摄氏度、F表示华氏度)
C = ( F - 32 ) / 1.8
F = C * 1.8 + 32
要求如下:
(1) 输入输出的摄氏度可采用大小写字母C结尾,温度可以是整数或小数,如:12.34C指摄氏度12.34度;
(2) 输入输出的华氏度可采用大小写字母F结尾,温度可以是整数或小数,如:87.65F指华氏度87.65度;
(3) 输出保留小数点后两位,输入格式错误时,输出提示:输入格式错误;
(4) 使用input()获得测试用例输入时,不要增加提示字符串。
#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("输入格式错误")
2、数字形式转换I
获得用户输入的一个正整数输入,输出该数字对应的中文字符表示。
0到9对应的中文字符分别是:零一二三四五六七八九
示例 1
123
9876543210
一二三
九八七六五四三二一零
#愚蠢的代码
numstr=input('')
trans={'1':'一','2':'二','3':'三','4':'四','5':'五','6'\
:'六','7':'七','8':'八','9':'九','0':'零'}
for i in numstr:
print(trans[i],end='')
#巧妙的代码
template = "零一二三四五六七八九"
s = input()
for c in s:
print(template[eval(c)], end="")
3、温度转换II
本例中要求输入格式为C34、F78等,标志放到了开头,此时为了能从第二位到最后一位读取字符串,使用TempStr[1:]表示字符串除首字符外的所有字符。
#TempConvert.py
TempStr = input()
if TempStr[0] in ['F']:
C = (eval(TempStr[1:]) - 32)/1.8
print("C{:.2f}".format(C))
elif TempStr[0] in ['C']:
F = 1.8*eval(TempStr[1:]) + 32
print("F{:.2f}".format(F))
else:
print() #不输入任何错误提示