python第一周程序题答案_Python编程第一周的练习-1,python,语言,程序设计,练习题

注意

input函数

都以

字符串类型

返回结果

eval函数

是以Python的表达方式来解析并执行字符串,并将返回结果输出

如果直接输入‘’hello’‘这样的字符串,eval函数会将其解析为hello变量,如果之前没有定义过这个变量,解释器就会报错。

我写的一段:

(经过删删改改,一开始老报错还找不到问题)

tem=input('输入')

if 'c' in tem:

con=1.8*eval(tem[0:-1])+32

print(str(con)+'F')

可以成功把摄氏温度转为华氏温度。

第一遍写的完整代码:

tem=input('输入')

if 'c'in tem:

con=1.8*eval(tem[0:-1])+32

print('{:.2f}F'.format(con))

elif 'C'in tem:

con=1.8*eval(tem[0:-1])+32

print('{:.2f}F'.format(con))

elif 'f'in tem:

con=(eval(tem[0:-1])-32)/1.8

print('{:.2f}C'.format(con))

elif 'F'in tem:

con=(eval(tem[0:-1])-32)/1.8

print('{:.2f}C'.format(con))

else:

print('输入格式错误')

参考答案写的代码:

#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("输入格式错误")

参考答案的代码更加简洁,思路基本上差不多

**一个问题是:**本来一开始写的if语句是

if ‘c’ or ‘C’ in tem

想把大小写融合到一句话里面,不知道为什么不行,这样运行出来if语句没有作用。

/

知道为什么不行了,看了一下条件判断语句中and和or的用法

if 条件1 and 条件2

if 条件1 or 条件2

其中的条件1和条件2都是要一个完整的条件语句

改成

if ‘c’ in tem or ‘C’ in tem:

就可以了(

记得要加冒号

)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值