来学Python啦,用Python详细讲解温度转换器

举报
小Bob来啦 发表于 2021/09/25 12:21:16 2021/09/25
【摘要】 Don't let dream just be your dream。别让梦想只停留在梦里。Python的其它IDLE其实还有Pycharm,Anaconda。Pycharm的安装教程和上次安装Clion相差不大,只是Clion是用的免安装版本,而Pycharm是需要安装的,小编下期为大家讲解Pycharm和Anaconda的详细安装教程。今天为大家演示一个华氏温度和摄氏温度之间的转换:先放...

Don't let dream just be your dream。别让梦想只停留在梦里。

Python的其它IDLE其实还有Pycharm,Anaconda。Pycharm的安装教程和上次安装Clion相差不大,只是Clion是用的免安装版本,而Pycharm是需要安装的,小编下期为大家讲解Pycharm和Anaconda的详细安装教程。

今天为大家演示一个华氏温度和摄氏温度之间的转换:

先放代码(不得不说,Python语言的代码真的是简洁):

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


小编现在也是刚开始学习Python,所以尽量会给大家讲得更详细。


1.第一行

TempStr=input("请输入带有符号的温度值:")

首先,我们先看第一行代码,第一行代码(如上图)有一个TempStr,可以称它为变量,有编程基础的就容易理解一些,和C语言有点不同的是这个变量不需要定义,C语言是明确提出变量使用之前是需要定义的。Python是不需要提前定义的,可认为Python是在赋值时就定义了变量。

还有一个关键词input,是用来输入的,可理解为:

变量=input(提示输入内容:输入的内容(赋给变量TempStr)

2.第二行

if TempStr[-1] in ['F','f']:

下面来到第二行,if大家应该都知道是什么意思,如果...这一看就知道是表判断的嘛,切记在if语句最后面需要带上:符号,下面的elif和else都需要有这个符号哦。

那么如果变量(TempStr)...后面又是什么意思呢,[-1]这是个啥呢,看起来好像C语言数组的下标,有排列的意思,那么在Python里面则是表示索引,意思就是返回字符串中单个字符,形式如:<字符串>[M]

由于Python有两种排列方式,叫正向递增序号和反向递减序号,大家看下图应该就容易理解了,正向递增序列是从0开始的,和C语言数组的小标表示一样;而反向递减序列则是从字符的最后一位开始,是从-1开始的,和递增开头的0相照应,这样做应该是为了能更好的判断字符开头和结尾。


图片

回到代码中,那么变量字符TempStr的[-1]字符则是表示变量TempStr最后的一位字符。

中间还有一个in,可能大家会立即想到在...里面,没错,就是表示的这个意思。

还有最后['F','f']:是代表什么意思呢?对了,还有个框框[]没讲,属实没啥好讲的。简单理解为一个边界,属于小时候三八界限一样的,把各种不同的语句分隔开。

可以理解为在变量TempStr的里面是否有F和f的字符。数字和英文字母都可以作为字符哦。F就是温度里面的华氏度。

3.第三行

C=(eval(TempStr[0:-1])-32)/1.8


再看下一行代码,看上去像一个公式,没错,就是表达公式的意思,这个公式也是华氏温度转化为摄氏温度的公式。在这句语句也用到了一些关键字,切记:关键字是不能作为变量的哦。C可以理解为一个变量,e**val便是一个关键字,也叫评估函数,大概作用就是去掉参数最外侧引号并执行余下语句的函数。**

例如:>>>eval("1")

输出便是1,即去掉了""这个双引号。记住只去掉一层""哦。

来个复杂一点点的:>>>eval('print("Hello")')

输出便是Hello,因为去掉最外层''后,余下的便是print("Hello")语句,print也是一个保留字,也叫关键字,都可以叫。这个和C语言里面的Printf很像,就一个字母的区别。也是输出的意思。即输出字符Hello。

/符号在Python里面是除的意思。

下面语句还出现了[0:-1],这是个啥呢,根据上面的[-1],看起来也差不多,那么意思肯定也相差不多了,其实变量+[0:-1]在Python中是切片的意思,记住变量+[-1]这种是索引哦。切片又是什么意思呢,简单来说就是返回字符串中一段字符字串,形式如:<字符串>[0:-1]

如果我们输入的字符串是45F,那么TempStr[0:-1]表示45,结合前面说的两种排列方式哦。

4.第四行

print("转换后的温度是{:.2f}C".format(C))


最后说一下输出这行代码,剩下的代码除了elif没说,基本上都是讲解过了。

print是输出的意思,也叫格式化输出,format是有多种用法的,这里只简单说一下,下次遇到后小编再详细解答哦。我们在这里可以简单理解为format(C)是将变量C的内容替换{:.2f}中,其中.2可以理解为保留小数点后面的两位数字。f即是在输出的变量为字符时添加的,输出是有很多格式的,这是其中的一种。

即这句语句可以理解为输出内容为转换后的温度是+format中变量C的内容。

5.简述

还有一个elif没说,其实看上去和C语言中的else if相差也不大,感觉是简写形式。不过这样理解后也好记一些,意思和else if是一样的,即否则如果,也可以理解为如果的意思。

最后的else便是否则的意思,即上面if和elif中的条件都不成立,便执行else中的语句。


6.运行结果

最后我们来看一下它的运行结果咯:

图片

祝大家和小编一起学Python能够学得快乐。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

举报
请填写举报理由
0/200