温度的刻画有两个不同体系:摄氏度(Celsius)和华氏度(Fahrenheit)。
请编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。
转换算法如下:(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("输入格式错误")
1、输入函数input()
<字符串变量>=input(<提示性文字>)
得到的是字符串
TempStr = input()
2、输出函数print()
变量格式化输出:%s(字符串),%d(整数),%f(浮点数),%%(输出%)
print(“格式化字符串”%变量1)
print(“格式化字符串”%(变量1,变量2…))
>>> print("%f"%x)
298.280000
3、字符串切片
<字符串>[M:N]:M缺失表示至开头,N缺失表示至结尾
<字符串>[M:N:K]:根据步长K对字符串切片
注意:左闭右开
>>> str1 = "mysqlsqlserverPostgresQL"
>>> str1[0:8]
'mysqlsql'
>>> str1[1:5]
'ysql'
>>> str1[:]
'mysqlsqlserverPostgresQL'
>>> str1[6:]
'qlserverPostgresQL'
>>> str1[:-3]
'mysqlsqlserverPostgre'
>>> str1[-1]
'L'
>>> str1[-3:-1]
'sQ'
>>> str1[-3:]
'sQL'
>>> str1[::-1]
'LQsergtsoPrevreslqslqsym'
4、eval()函数——能够以python表达式的方式解析并执行字符串,将返回结果输出。
用户希望输入一个数字,并用程序对这个数字进行计算,可如下操作
eval(input(<输入提示字符串>))
C = (eval(TempStr[0:-1]) - 32)/1.8
>>>x=2
>>>eval("x+2")
4
获得用户输入的一个正整数输入,输出该数字对应的中文字符表示。
0到9对应的中文字符分别是:零一二三四五六七八九
template = "零一二三四五六七八九"
s = input()
for c in s:
print(template[eval(c)], end="")
print()中增加end=""参数表示输出后不增加换行,多个print()可以连续输出。
人民币和美元是世界上通用的两种货币之一,写一个程序进行货币间币值转换,其中:
人民币和美元间汇率固定为:1美元 = 6.78人民币。
程序可以接受人民币或美元输入,转换为美元或人民币输出。人民币采用RMB表示,美元USD表示,符号和数值之间没有空格。
注意:
(1) 这是一个OJ题目,获得输入请使用input() ;
(2) 不提示输出格式错误,结果小数点后保留两位。
CurStr = input()
if CurStr[:3] == "RMB":
print("USD{:.2f}".format(eval(CurStr[3:])/6.78))
elif CurStr[:3] in ['USD']:
print("RMB{:.2f}".format(eval(CurStr[3:])*6.78))