#丑新的python学习笔记
本科主修化学,现在想要改造自己,于是从0开始学习python。网课听的是MOOC上嵩天老师的课程。小白最喜欢这种高质量的免费资源了。希望自己可以慢慢进步吧~
今天学习的是温度转换,尝试抄了两个版本的代码。旁边记录了一点简短的笔记。
实例中使用的是if-elif-else类型的分支语句,这个语句的意思还是很好理解的(自信)!
example1:
这个例子可以正常转换温度的,输出一切正常。
#TempConvert1.py
TempStr = input("请输入带有符号的温度值:") #给字符串赋值
if TempStr[-1] in ['F','f']: #判断字符串TempStr的最后一个字符是否在集合['F','f']中
C=(eval(TempStr[0:-1])-32)/1.8 #eval(字符串)将字符串转变为python语句,该处转为可运算的数值
print("转换后的温度是{:.2f}C".format(C)) #{:.2f}为保留两位小数;点format将对象格式化输出
if TempStr[-1] in ['C','c']:
F=1.8*eval(TempStr[0:-1])+32
print("转换后的温度是{:.2f}F".format(F))
else:
print("输入格式有误")
example2:
这个例子是无法获得结果,同时也没有报错。才疏学浅的我瞪大眼睛检查了一下自己的代码,感觉跟老师给出的代码是一模一样的,看不出是哪里出错了。这可真是难倒我了……
def tempConvert(ValueStr): #定义一个函数,不直接运行
if ValueStr[-1] in ['F','f']:
C=(eval(ValueStr[0:-1])-32)/1.8 #[0:-1]表示从第一个到最后一个但不包含最后一个的子字符串,跟数集里面的[)很像
print("转换后的温度是{:.2f}C".format(C))
elif ValueStr[-1] in ['C','c']:
F=1.8*eval(ValueStr[0:-1])+32
print("转换后的温度是{:.2f}F".format(F))
else:
print("输入格式错啦")
TempStr=input("请输入带符号的温度:") #接收用户的输入存到变量TempStr里面。此行开始执行程序
tempConvert=(TempStr) #将TempStr当作参数传递给变量ValueStr
输出的结果如下:
关于温度转换的学习就先到这里,有没有同样的初学者来一起探讨学习呀?