Python基础---控制执行流程
一.if语句
1.if语句
作用:让程序根据条件选择性地执行某条语句或某些语句
说明:if语句又叫条件语句,也叫分支语句
语法:
if 真值表达式1: 语句块1 elif 真值表达式2: 语句块2 ... else: 语句块4
语法说明:
- elif子句可以有0个,1个或多个
- else子句可以有0个或1个且只能放在此if语句的最后
要求:if语句内部的语句通常要以4个空格的缩进来表示包含关系,相同的缩进格式代表相同的所属级别
示例:
# 输入一个数字,判断这个数是0,还是正数,还是负数 n = int(input("请输入一个数: ")) if n == 0:
print("您输入的是0")
elif n > 0:
print("您输入的是正数")
else:
print("您输入的是负数")
if语句的真值表达式:
if 100: print("真值") #等同于 if bool(100): print("真值")
2.if语句嵌套:
- if语句本身是由多条子句组成的一条复合语句
- if语句可以作为语句嵌套到另一个语句的内部
示例:
# 根据输入的月份来判断是哪儿个季度
month = int(input("请输入月份(1~12): ")) if 1 <= month <= 12:
print("是合法的月份")
if month <= 3:
print("春季")
elif month <= 6:
print("夏季")
elif month <= 9:
print("秋季")
else:
print("冬季")
else:
print("您的输入有误!")
二.while语句
作用:根据一定条件,重复地执行一条语句或多条语句
语法:
while 真值表达式: 语句块 else: 语句块
示例:
# 此示例示意while 语句的用法 i = 1 # 创建一个变量,用来控制while循环的次数
while i < 20: # 判断循环条件,如果为真则执行语句块1
print("hello world!")
i += 1 # 修改循环变量
else:
print("条件不满足,循环结束!") print("上一条while语句结束,此时变量i =", i)
while语句语法说明:
- 先执行真值表达式,判断True/False
- 如果为True则执行语句块1,然后跳转到第一步
- 如果为False则执行else子句部分的语句块2.然后结束此while语句的执行.如果没有else子句,则直接结束此while语句
- else子句部分可以省略(同if语句类似)
while注意事项:
- 要控制真值表达式来访问死循环
- 通常用真值表达式内的变量来控制循环条件
- 通常要在循环语句块内改变循环变量来控制循环的次数和变量的走向
while语句嵌套
while 真值表达式: ... while 真值表达式2: ... else: ... else: ...
三.for语句:
作用:用来遍历可迭代对象的数据元素
语法:
for 变量列表 in 可迭代对象: 语句块1 else: 语句块2
示例:
# 此示例示意用for语句循环遍历 可迭代对象中的数据
s = 'ABCDE'
for ch in s:
print('ch -->', ch)
else:
print("for 语句执行else子句") print("程序退出")
for语句说明:
- 可迭代对象每次提供一个元素依次赋值给变量列表中的变量,赋值完毕后执行语句块1,重复执行此步骤,直到可迭代对象不能提供数据为止
- 可迭代对象提供完所有元素后,执行else子句部分的语句块2,然后退出此for语句
- else子句部分可以省略(同while语句类似)
- 当在循环内部用break终止循环时,else子句部分语句不会执行
for语句嵌套:
for语句内部可以放任意语句,包含for语句和while语句
示例:
for x in "ABC":
for y in '':
print(x + y) # 思考 count 的值是多少?
count = 0
for x in range(5):
for y in range(10):
count += 1
print(count) #
print(x, y) # x,y的值是多少?
四.break语句:
作用:用于循环语句(while,for语句)中,用来终止当前循环语句的执行
说明:
- 当break语句执行后,此循环语句break之后的语句将不再执行
- break语句通常和if语句组合使用
- break语句终止循环时,循环语句的else子句的语句将不会执行
- break语句只能终止当前循环语句的执行,如果有循环嵌套时,不会跳出嵌套的外层循环
- break语句只能在循环语句(while或for语句)内部使用
示例:
i = 1
while i <= 6:
print("本次循环开始时:", i)
if i == 3:
break # break将打破包含它的while语句
print("本次循环结束时:", i)
i += 1
else:
print("我是while 里的else子句")
print("这是程序最后一条语句, i=", i)
五.continue语句
作用:用于循环语句(while,for语句)中,不再执行本次循环内continue之后的语句,重新开始一次新的循环
说明:
- 在while语句中,执行continue语句将会直接跳转到while语句的真值表达式处重新判断循环条件
- 在for语句中,执行continue语句,将会从可迭代对象中取下个元素,绑定变量后再次进行循环
示例:
for x in range(5):
if x == 2:
continue
print(x)
六.python的三元表达式(也叫条件表达式)
语法:表达式1 if 真值表达式 else 表达式2
作用:如果真值表达式的布尔环境值为True,则执行表达式1并返回结果的引用,否则执行表达式2并返回结果的引用
示例:
# 此示例示意条件表达式的用法
# 商场促销,过100 返 20
money = int(input("请输入商品总额: ")) pay = money - 20 if money > 100 else money print("您需要支付", pay, "元")
七.死循环:
死循环是指循环条件一直成立的循环
死循环通常用break语句来终止循环
死循环的else子句永远不会执行
示例:
while True:
n = int(input("请输入: "))
if n == 0:
break
print(n)
Python基础---控制执行流程的更多相关文章
- 《Java基础复习》-控制执行流程
最近任务太多了,肝哭我了,boom 参考书目:Thinking in Java <Java基础复习>-控制执行流程 Java使用了C的所有流程控制语句 涉及关键字:if-else.whil ...
- 大家一起和snailren学java-(三) 操作符&控制执行流程
“又是新的一周,感觉要学的东西还有好多,加油.由于第三章和第四章内容要总结的不是很多,没太多需要拿出来说的,就整合到一个帖子好了” 操作符 操组符,什么是操作符?其实就是+-*/=&^~| 等 ...
- java控制执行流程
控制执行流程 欢迎转载,转载烦请注明出处,谢谢. https://www.cnblogs.com/sx-wuyj/p/11177257.html java当中涉及到的关键字包括if-else.whil ...
- [Java编程思想-学习笔记]第4章 控制执行流程
4.1 return 关键字return有两方面的用途:一方面指定一个方法结束时返回一个值:一方面强行在return位置结束整个方法,如下所示: char test(int score) { if ...
- 控制执行流程——(Java学习笔记三)
if-else 控制程序流程最基本的形式 格式: if(boolean - expresion){ statement } 或 if(boolean - expresion){ stateme ...
- Java编程思想之四控制执行流程
程序必须再执行过程中控制它的世界,并做出选择.在Java中,你要使用执行控制语句来做出选择. 4.1true和false 所有条件语句都利用条件表达式的真或假来决定执行路径. Java不允许使用数字作 ...
- python基础语法2 流程控制 if,while,for
if语句: 什么是if? 主要是用于判断事物得对错,真假,是否可行 语法结构: python是通过缩进来决定代码的归属 pep8: 缩进一定是四个空格 tab键 if 条件: 代码块 .... ... ...
- Python基础——数据类型、流程控制、常用函数
Python tutorial :Python网站上的对 Python 语言和系统的基本概念和功能进行的非正式的介绍. 在学习Python之前,我们需要学会在各个平台配置Python的运行环境,下文中 ...
- python基础——3(流程控制)
一.if判断 1.语法一: if 条件: 子代码块 示例代码: sex = 'female' age = 18 is_beautiful = True if sex == 'female' and a ...
随机推荐
- https://www.cnblogs.com/chinabin1993/p/9848720.html
转载:https://www.cnblogs.com/chinabin1993/p/9848720.html 这段时间一直在用vue写项目,vuex在项目中也会依葫芦画瓢使用,但是总有一种朦朦胧胧的感 ...
- centos6.4下安装python3.6.1
1.安装编译环境所需包 #yum install zlib-devel bzip2-devel openssl-devel ncurese-devel gcc zlib 安装成功 2.下载源码包 #w ...
- Input:type属性
1.button:定义可点击的按钮(通常与 JavaScript 一起使用来启动脚本). <input id="" type="button" name= ...
- Tomcat的优化技巧
(1)参数 minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10. maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75. acceptCo ...
- Amazon AWS
- Qt : 隐式数据共享(copy on write)
copy on write 意思当内容有变动的时候,才对容器中的数据结构进行复制.否则仅作共享. QT许多类中使用了隐式数据共享技术,来最大化资源利用率和最小化拷贝时的资源消耗. 在数据传递时,其实只 ...
- xcart-子分类/语言不显示
由于数据库的版本不同,表名会区分大小写的情况,这样就导致xcart语言相关的信息显示不出来,此时只需更改根目录下的init.php文件,如下: 改成小写的就OK了.
- [转]Java四种线程池的使用
Java通过Executors提供四种线程池,分别为:newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程.newFixe ...
- leetcode-80-删除排序数组中的重复项②
题目描述: 第一次提交: class Solution: def removeDuplicates(self, nums: List[int]) -> int: nums.reverse() f ...
- 洛谷P5341 [TJOI2019]甲苯先生和大中锋的字符串
原题链接P5341 [TJOI2019]甲苯先生和大中锋的字符串 题目描述 大中锋有一个长度为 n 的字符串,他只知道其中的一个子串是祖上传下来的宝藏的密码.但是由于字符串很长,大中锋很难将这些子串一 ...