自学 Python 之条件控制
微信公众号:一个优秀的废人
如有问题或建议,请后台留言,我会尽力解决你的问题。
前言
我是狗哥,一名程序猿。做过 Android、撸过 Java、目前在自学 Python 。注册 「一个优秀的废人」这个公号已有些日子,真正有心将它运营起来是这两天萌生的想法。注册这个号的初衷是分享我的 Python 学习笔记。一个知识,你自己懂,不算是真的懂,你能把他人说懂,才是真正掌握。分享,是一个最好的复习过程。
什么是 Python 中的条件控制?
简而言之,使不同的程序(事件)在不同的条件下执行。这么说可能有点笼统,举个栗子:如果今天晚上不下雨,我就去跑步;否则,我就宅在家打游戏。
以上栗子中,如果和否则就是 Python 中的关键字,今天晚上不下雨就是条件,条件后面的就是程序,也就是满足条件要执行的事件。具体流程图如下:
当然这只是最简单的条件控制,后续还会降到各种复杂的条件嵌套循环语句,且听我娓娓道来。
if语句
Python 中的条件控制语句就是 if 语句,它的格式如下:
if condition1:
#do something
statement1
elif condition2:
#do something
statement2
else:
#do something
statement3
- 如果 “condition1” 为 True 将执行 “statement1” 块语句
- 如果 “condition1” 为False,将判断 “condition2”
- 如果”condition2” 为 True 将执行 “statement2” 块语句
- 如果 “condition2” 为False,将执行”statement3”块语句
另外,需要注意一点的就是,不同于 Java/c 等语言, Python 用 elif 代替了 else if , 所以Python 中的 if 语句关键字是:if - elif - else。
另外有三点需要格外注意:
- 每个条件每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
- 使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块(不要使用花括号)。
- 在 Python 中没有 switch – case 语句
说了这么多,下面放上代码助你们理解。
score = int(input("请输入你的高考成绩: ""))
print("")
if score < 0:
print("你是要上天啊")
elif score >= 376 :
print("恭喜你过了 2018 年广东高考理科本科线。")
else:
print("很遗憾,你的分数没过本科线。")
### 退出提示
input("点击 enter 键退出")
将以上脚本保存在score.py文件中,并执行该脚本,输出:
$ python3 score.py
请输入你的高考成绩: 500
恭喜你过了 2018 年广东高考理科本科线。
点击 enter 键退出
下面介绍 if 语句中常用的运算符:
操作符 | 描述 |
---|---|
< | 小于 |
<= | 小于或等于 |
> | 大于 |
= |
大于或等于 |
== | 等于,比较对象是否相等 |
!= | 不等于 |
以下代码,演示一下猜数字的游戏,感兴趣的朋友可以跟着敲一遍:
number = 9
guess = -1
print("数字猜谜游戏!")
while guess != number:
guess = int(input("请输入你猜的数字:"))
if guess == number:
print("恭喜,你猜对了!")
elif guess < number:
print("猜的数字小了...")
elif guess > number:
print("猜的数字大了...")
将上述代码保存为 guess.py 并运行,输入你猜的数字,得到以下结果:
$ python3 guess.py
数字猜谜游戏!
请输入你猜的数字:1
猜的数字小了...
请输入你猜的数字:9
猜的数字大了...
请输入你猜的数字:7
恭喜,你猜对了!
if 嵌套
if 嵌套可以实现很多复杂的条件控制结构,它的语法如下:
if 表达式1:
语句
if 表达式2:
语句
elif 表达式3:
语句
else:
语句
elif 表达式4:
语句
else:
语句
下面以文章开头的例子来写代码,验证一下运行结果是否符合要求。
num=int(input("输入一个数字:"))
if num%2==0:
if num%3==0:
print ("你输入的数字可以整除 2 和 3")
else:
print ("你输入的数字可以整除 2,但不能整除 3")
else:
if num%3==0:
print ("你输入的数字可以整除 3,但不能整除 2")
else:
print ("你输入的数字不能整除 2 和 3")
将以上代码保存为 test_if.py 文件中,执行后输出结果为:
$ python3 test.py
输入一个数字:6
你输入的数字可以整除 2 和 3
后语
我不是大神,于 Python 领域来说,我是菜鸡,但谁刚开始接触一个领域的时候不是菜鸡呢。 写这个号的目的是为了记录我自学 Python 的笔记。
如果文章对你哪怕有一丁点帮助请右下角点赞,否则忽略就好。平时工作较忙,自学 Python 的时间较少,可能会学得慢点,希望大家多多指教。此处奉上思维导图:
最后,如果刚兴趣请长按二维码关注一波,我会努力带给你们价值,赞赏就不必了,能力没到,受之有愧。