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 ...
随机推荐
- json的dump和dumps的区别
dumps是将dict转化成str格式,loads是将str转化成dict格式. dump和load也是类似的功能,只是与文件操作结合起来了. In [1]: import json In [2]: ...
- 多进程并发socket通信
实现多个客户端同时接入server端,并且可以同时向客户端发送信息 server端 def dunc(conn,client_addr): while True: data=conn.recv(102 ...
- Spring 切面优先级(5)
之前我们提过的应用场景,一个原始对象可能会需要插入多个切面,如果我们按前几篇博客文章介绍的方法完成切面及其通知的注解声明,那么它的执行顺序是怎么样的呢? 本文将介绍AspectJ的切面如何划分优先级 ...
- java笔试之完全数计算
完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数. 它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身. 例如:28,它有约数1.2.4.7.14. ...
- READING | 我是一只IT小小鸟
“世界是如此的熙熙攘攘,让年轻的心找不到方向,但这些人是不能小看的啊,如果他们开始敲打自己的命令行.” “知之者不如好知者,好之者不如乐之者”,很多IT界的优秀人才都对计算机技术或者IT技术有着浓厚的 ...
- select函数使用
这两天写了这么一段代码,select直接返回-1,错误信息是“invalid argments”,显然没有达到阻塞超时的效果. 代码如下: bool IsSocketWaitRead(inf fd,i ...
- 廖雪峰Java12maven基础-1maven入门-2依赖管理
maven 如果我们的项目依赖第三方的jar包: Commons Logging发布的jar包在那里下载? 使用Log4j需要哪些jar包 其他依赖:junit,Javamail,MySQL驱动... ...
- mybatis结果封装到hashmap中没有null的数据
1.在ssm框架中 在mybatis-config.xml配置文件中加下面这句代码即可解决 <setting name="callSettersOnNulls" value= ...
- memcache课程---3、php使用memcache缓存实例
memcache课程---3.php使用memcache缓存实例 一.总结 一句话总结: 前置:windows下安装好memcache.exe,安装好memcache的php扩展,开启memcache ...
- 菜鸟nginx源码剖析数据结构篇(六) 哈希表 ngx_hash_t(上)[转]
菜鸟nginx源码剖析数据结构篇(六) 哈希表 ngx_hash_t(上) Author:Echo Chen(陈斌) Email:chenb19870707@gmail.com Blog:Blog.c ...