初学Python第三天

1.条件结构

程序逻辑——条件判断。学会了条件判断后,我们的程序将不再单一,变得智能起来!

前几天张三的智能家居设备中新添了一样小玩意儿——空调伴侣,能根据室内温度的高低,控制空调的开关。

我的设定是,如果室内温度低于 32 度,就不做操作,如果室温高于 32 度,就自动打开空调。这个 如果...就... 的逻辑就是条件判断。

当今我们的世界到处都是智能设备,极大地方便了我们的生活,而 如果...就... 这种最基本的条件判断,就是这一切的基础。

编程世界也是一样,条件判断非常重要。Python 碰到表示条件判断的语句的时候,它会先判断是否符合条件,如果符合,那就执行对应的代码。

最简单的例子是,如果一个数字大于 0,就让 Python 打印“这个数字是正数”。

接下来我们一起进入《阿甘正传》的故事,通过阿甘的成长历程来学习如何让程序作出判断。

阿甘,全名福瑞斯特·甘,从小只有 75 的智商,他的背部骨骼长歪了,必须依靠支架才可以勉强走路,阿甘和妈妈相依为命。

 Python 实现了一个智商分类程序,运行代码,输入不同的智商值,程序会输出对应的智商等级。

你不需要弄懂代码的细节,直接运行你的第一个条件分支的代码吧!

拓展:一般来说,人口中的一半人属于正常和平均智力水平(得分在 90-109 之间),得分在 110 以上就属于高智商者,即很聪明。 据说,爱因斯坦的智商是 160。

 score = int(input('输入智商值:'))
if score < 80:
  print('智力低下')
if score >= 80 and score < 110:
  print('普通智力')
if score >= 110 and score < 140:
  print('智力较高')
if score >= 140:
  print('天才或接近天才')

条件结构

阿甘在学校里经常受到别的孩子欺侮,他跑着躲避别人的捉弄。

进入高中后,有一天阿甘被人欺负,拼命逃跑,无意间冲入了橄榄球场,他跑步的速度被球队经理看上,依靠这项技能阿甘竟然成功升入大学。

而当初如果阿甘没有“跑”的技能,他就无法升入大学,现在我们来通过条件结构来实现这个逻辑。

skill = '跑'
if skill == '跑':
  print('升入大学,成为橄榄球队主力!')
else:
  print('无法升入大学,过着不为人知的生活')

上面这段代码的含义是:如果(if)技能(skill)为(==)跑,那么打印出升入大学,成为橄榄球队主力!。否则(else)打印出无法升入大学,过着不为人知的生活。

值得注意的是,在上面代码中出现了一个新的操作符,即判断相等符号(==),顾名思义,就是判断操作符左边和右边的值是不是相等的。

注意:很多人总是分不清 = 和 == 的区别,你一定要记住了: = 是赋值,== 是判断相等。

条件结构也叫分支结构

2.if...else... 语句

if...else… 语句由条件和两个代码块组成,可以抽象为如下结构:

其中判断条件成立时,则执行冒号后面的 代码块 1;反之,如果判断条件不成立则执行 else: 后面的 代码块 2

这里的判断条件一般使用比较运算符进行比较,常见的比较运算符有 ==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)。

在开车的过程中,如果开了导航的话,当超速行驶时,导航会提示我们超速了,其实这里就用到了条件结构。假如某条公路限速 60,我们可以写一个判断是否超速的程序:

speed = 100
if speed > 60:
  print('超速了')
else:
  print('车速正常')

注意:判断条件和 else 后面的冒号,一定不能丢掉,很多初学者会忽视这里冒号的存在。而且在第一关学过字符串的引号必须是英文的,这里的冒号也不例外,必须要用英文的哦~

细心的你有没有发现执行代码块 1 和 2 前面都有两个空格?丢失空格会导致代码无法运行。

其实这个代码行首的留白在编程里有个专业的叫法——缩进。Python 的代码块是通过缩进来定义代码块范围的。

3.缩进

代码行的缩进决定了代码之间的从属关系。一些代码是否要执行,要听另外一些代码的命令。

这种“上下级”似的从属关系,就要靠缩进来判断。我们再来看一下之前判断是否超速的代码:

speed = 100
if speed > 60:
  print('超速了')
else:
  print('车速正常')

第 3 行和第 5 行都缩进了,因此它们分别从属于 if speed > 60: 和 else:,相当于跟在大哥后面的小弟。当条件成立时,if speed > 60: 后面的小弟便出来干活了。当条件不成立时,则 else: 后面的小弟出来干活。

else 和 if 都是大哥,属于同级。虽然 else 在 if 语句后面,但 else 是不用缩进的。

要注意的是,没有从属关系的代码间如果乱用缩进,也会出问题导致程序报错的哦。如:

i = 1
  b = 1
# 报错:IndentationError: unexpected indent
# 缩进错误:有不应该出现的缩进

缩进一般使用两个空格或者四个空格,但是一定要记住在上下文中保持一致,不能一会用两个空格,一会用四个空格。

4.注释

当我们写得代码越来越多,越来越复杂的时候,我们回过头看之前写的代码时,很难立刻就能看明白当初为什么要这么写。而有了注释,相当于给代码做了标注笔记,下次再看的时候便能快速回忆起来。

Python 中的注释很简单,只需要在注释内容前加上 # 即可。比如:

# 屏幕打印张三
print('张三')

注释是给人看的,Python 会自动忽略注释的内容,不去执行。适当的注释可以提高代码可读性,但不要加一些没有必要的注释,不要为了加注释而加注释,比如:

# 给变量 name 赋值为 '张三'
name = '张三'

上面的注释是没有必要的,因为会 Python 的人一眼就能看出 name = '张三' 的含义。注释是辅助人们来阅读代码的,如果代码本来可读性就极高,就没有为它添加注释的必要了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值