计算机二级Python学习笔记(一):温度转换
今天通过一个温度转换的十行代码,理解了一些Python的基本元素。
所谓温度转换,就是摄氏度和华氏度的转换,要求输入摄氏度,可以输出华氏度,反之一样能实现。代码如下:
#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("输入格式错误")
只有十行,但还是看不懂?没关系,我开始也不懂,接下来我逐行梳理一遍,感兴趣的话也可以和我从这十行代码开始,了解一些Python的基本元素。
第1行 #TempConvert.py
这行是注释,只是为了提高代码的可读性,不参与代码的执行。
python的注释有两种,单行注释使用#,多行注释可以使用在注释内容前后用三个单引号来实现。
第2行 TempStr = input("请输入带有符号的温度值:")
其中TempStr是一个变量,通过“=”来进行赋值。变量命名规则首字符不能是数字,不能和保留字符相同,区分大小写。
input()是输入函数,获取用户输入的信息,用户输入的信息以字符串的形式保存在<变量>中。
双引号里面的是字符串,这里作用是程序的提示符。
结合起来看,就是显示一段提示文字,然后要输入一个带符号的温度值,以字符串的形式赋值给TempStr。
第3行 if TempStr[-1] in ['F','f']:
if是分支语句,python的分支语句除了if还有elif,else。它们后面都要带一个冒号,这是语法的一部分。
方括号代表数据类型是列表类型,关于数据类型还有整数类型和字符串类型。
-1代表字符串的序号,-1指的字符串的最后一位,关于字符串序号,可以参考下图:
in也是保留字符,用来判断是否在列表中。
结合起来理解,这行代码的意思是,如果变量TempStr中的最后一位,包含F或f,也就是单位是华氏度时,那么就执行下面的代码。
第四行 C = (eval(TempStr[0:-1])-32)/1.8
其中C也是变量,需要将计算的结果赋值给C。
[0:-1]代表字符串的切片,表示的意思是从字符串第一位,到不包含最后一位。也就是提取了单位前的数字。
eval()函数用来执行计算表达式,可以实现去除字符串两边的引号。由于上面是字符串的切片,提取的是一个字符串,去掉两边引号后就可以参与到后面的计算了。
结合起来看,就是将华氏度的数值,通过公式的计算,结果返回给C。
第五行 print("转换后的温度值是:{:.2f}C".format(C))
print()是输出函数,以字符串形式将结果显示出来。
{:.2f}代表保留两位小数,{}代表槽,后续的变量将会引入到这里。这里是将.format(C)中C变量引入进来,也就是第四行计算出的值。
结合来看,就是输出计算后的摄氏温度的值。
第6~10行代码,除了简单的分支语句的区别,其它的在上面都有涉及,主要就是当判断输入为华氏度时,计算输出摄氏度。以及格式不对的情况下显示的字符串。
这样一梳理,十行代码就清晰多了。今天还做了几道习题巩固了一下,说是举一反三,实际上是搞懂了三,才对这个一理解更深刻一些。
关于温度转换问题就聊到这里吧,据说明天又要降温了,大家注意保暖。
计算机二级Python学习笔记(一):温度转换的更多相关文章
- Deep learning with Python 学习笔记(10)
生成式深度学习 机器学习模型能够对图像.音乐和故事的统计潜在空间(latent space)进行学习,然后从这个空间中采样(sample),创造出与模型在训练数据中所见到的艺术作品具有相似特征的新作品 ...
- 大学四年的Python学习笔记分享之一,内容整理的比较多与仔细
翻到以前在大学坚持记录的Python学习笔记,花了一天的时间整理出来,整理时不经回忆起大学的时光,一眨眼几年就过去了,现在还在上学的你们,一定要珍惜现在,有个充实的校园生活.希望这次的分享对于你们有学 ...
- OpenCV之Python学习笔记
OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书< ...
- Python学习笔记(六)
Python学习笔记(六) Ubuntu重置root密码 Ubuntu 16.4 目录结构 Ubuntu 命令讲解 1. Ubuntu重置root密码 启动系统,显示GRUB选择菜单(如果默认系统启动 ...
- 【python学习笔记】3.字符串使用
[python学习笔记]3.字符串使用 字符串是一种序列,素有标准的序列操作对字符串用样适用,字符串是不可以改变 格式化操作符,%,左侧是格式化字符串,右侧是被格式的值,可以是一个值.元组.字典 数值 ...
- Python学习笔记九
Python学习笔记之九 为什么要有操作系统 管理硬件,提供接口. 管理调度进程,并且将多个进程对硬件的竞争变得有序. 操作系统发展史 第一代计算机:真空管和穿孔卡片 没有操作系统,所有的程序设计直接 ...
- Python学习笔记,day5
Python学习笔记,day5 一.time & datetime模块 import本质为将要导入的模块,先解释一遍 #_*_coding:utf-8_*_ __author__ = 'Ale ...
- python学习笔记(二)、字符串操作
该一系列python学习笔记都是根据<Python基础教程(第3版)>内容所记录整理的 1.字符串基本操作 所有标准序列操作(索引.切片.乘法.成员资格检查.长度.最小值和最大值)都适用于 ...
- python学习笔记目录
人生苦短,我学python学习笔记目录: week1 python入门week2 python基础week3 python进阶week4 python模块week5 python高阶week6 数据结 ...
随机推荐
- leetcode29 两数相除 int 与移位
难受啊 考虑越界 考虑dividend为-2^31,用负数移位运算 class Solution { public: int divide(int dividend, int divisor) { i ...
- JavaScript事件绑定的三种方式
(一)事件绑定的三种方式 (1)通过on的形式 <script type="text/javascript"> var div = document.getElemen ...
- vue & async mounted
vue & async mounted refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!
- 知乎 bug
知乎 bug shit zhihu https://zhuanlan.zhihu.com/p/111809590 无法展开评论 https://unpkg.zhimg.com/@cfe/sentry- ...
- HTML marquee
HTML marquee 跑马灯 https://developer.mozilla.org/en-US/docs/Web/HTML/Element/marquee https://developer ...
- NGK团队是如何打造超高回报率的BGV项目的?
NGK旨在激励网络的供给端引导去中心化的节点集群,用于促进网络使用和增加带宽流动. 具体来讲,在未来的24个月内,NGK会将部分生态参与者纳入白名单系统有兴趣的参与者可关注官方信息. 对内,NGK采用 ...
- 2021-2-20:请你说说分布式系统 BASE 理论是什么?
BASE 理论是由 Dan Pritchett 在 ACM 上发表的一篇论文中提出的理论.是在 CAP 理论基础上提出的一种更实际的理论指导,和 PACELC 理论是有些相近的地方的. BASE 是指 ...
- django学习-26.admin管理后台里:修改登录页面标题,修改登录框标题,修改首页标题
目录结构 1.前言 2.完整的操作步骤 2.1.第一步:查看[site.py]的源码 2.2.第二步:在应用[hello]所在目录里的[admin.py]里重写三个属性的属性值 2.3.第三步:重启服 ...
- 国际标准时间格式ISO8601
日期表示法 年由4位数字组成YYYY,或者带正负号的四或五位数字表示±YYYYY.以公历公元1年为0001年,以公元前1年为0000年,公元前2年为-0001年,其他以此类推.应用其他纪年法要换算成公 ...
- iOS图片预览、放大缩小
思路 图片预览,优先考虑基础控件UIImageView.UIButton 图片预览中可能需设置不同的mode,优先考虑UIImageView typedef NS_ENUM(NSInteger, UI ...