Python条件控制和循环语句(if while for )
Python条件控制和循环语句(if while for )
条件控制
概念:Python 条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块


结构
1. 顺序结构
1. 分支结构
2. 循环结构
1. 单分支
if 条件:
条件成立之后执行的代码块
2. 双分支
if 条件:
条件成立之后执行的代码块
else:
条件不成立之后执行的代码块
3. 多分支
if 条件:
条件成立之后执行的代码块
elif 条件1:
条件不成立、条件1成立执行的代码块
elif 条件2:
条件不成立、条件1成立执行的代码块
elif 条件3:
条件不成立、条件1成立执行的代码块
elif 条件4:
条件不成立、条件1成立执行的代码块
elif 条件5:
条件不成立、条件1成立执行的代码块
else:
条件不成立之后执行的代码块
- 在嵌套 if 语句中,可以把 if...elif...else 结构放在另外一个 if...elif...else 结构中。
if 表达式1:
语句
if 表达式2:
语句
elif 表达式3:
语句
else:
语句
elif 表达式4:
语句
else:
语句
- 1. 做一个用户登录功能,用户名:kevin,密码:123
# 要求:用户名和密码都输入正确,打印来宾三位,否则:提示用户名或者密码错误
# 1. 接收用户输入的用户名
username = input('请输入你的用户名:')
# 2. 接收用户的密码
password = input('请输入你的密码:') # str
# 3. 比较用户名和密码是否正确
if username == 'kevin' and password == '123':
print('来宾三位')
else:
print('用户名或者密码错误')
1. 根据用户名的不同,打印不同的身份
kevin(管理员) tony(保安) jerry(财务人员) tank(司机) 打印未知人员
1. 让用户输入用户名
username = input('请输入你的用户名:')
开始比较
if username == 'kevin':
print('管理员')
elif username == 'tony':
print('保安')
elif username == 'jerry':
print('财务人员')
elif username == 'tank':
print('司机')
else:
print('未知人员')
注意事项:1. 所有的条件最终都会转化为布尔值进行判断,条件是否成立
2. Python中,使用缩进来表示代码的从属关系
3. 同属于一个代码块的多行子代码块缩进量要一致
4. 不是每一个代码都会有子代码块
## 循环语句
while while+break while + else while+continue 标志位

同样需要注意冒号和缩进。另外,在 Python 中没有 do..while 循环。

while 来计算 1 到 100 的总和: n = 100 sum = 0 counter = 1 while counter <= n: sum = sum + counter counter += 1
print("1 到 %d 之和为: %d" % (n,sum))
输入密码:
while True:
username = input('请输入你的用户名:')
password = input('请输入你的密码:') if username == 'kevin' and password == '123':
print('登录成功')
else:
print('登录失败')
while+else
count = 0
while count < 5:
if count == 3:
break
print(count)
count += 1
else:
print('哈哈哈')
"""else: 当while循环中没有被中断(break)的时候会走else语句"""
whlie+break
while True:
username = input('请输入你的用户名:')
password = input('请输入你的密码:')
if username == 'kevin' and password == '123':
print('登录成功')
break # 跳出本层循环
else:
print('登录失败')
count += 1
break跳出本层循环的含义
while True:
username = input('请输入你的用户名:')
password = input('请输入你的密码:')
if username == 'kevin' and password == '123':
print('登录成功')
####### 让用户继续输入它要执行的指令,用户输入完指令之后,打印正在执行某个指令
while True:
cmd = input('请输入你要执行的指令:')
if cmd == 'q':
# 结束程序
break
print('正在执行你的指令:%s' % cmd) # 当用户输入q的时候,结束程序
break
else:
print('登录失败')
标志位的使用
flag = True
while flag:
username = input('请输入你的用户名:')
password = input('请输入你的密码:')
if username == 'kevin' and password == '123':
print('登录成功')
####### 让用户继续输入它要执行的指令,用户输入完指令之后,打印正在执行某个指令
while flag:
cmd = input('请输入你要执行的指令:')
if cmd == 'q':
# 结束程序
flag = False
print('正在执行你的指令:%s' % cmd) # 当用户输入q的时候,结束程序
else:
print('登录失败')
while+continue
使用while循环打印出0-10之间的数字, 但是不打印6
count = 0
while count < 10:
if count == 6:
count += 1
# 不打印
continue # 跳出while循环的本次循环 --------------- 本层
print(count)
count += 1
死循环:
程序中坚决不能出现死循环
count = 0
while True:
print(count)
count+=1
"""如果一旦出现了死循环,CPU的利用率会极速拉满,导致其他程序也不能用,甚至于关机"""
for
for循环不会出现死循环,它的循环条件不是我们来控制,是人家内部已经控制好了
for循环和while循环都是用来重复一个事情的,for循环能够实现的功能,while循环都可以实现
for循环的语法结构更加简洁,它不容易出现死循环,所以,推荐以后能够使用for循环的都使用for循环可迭代对象:字符串、列表、字典、元组等,能够支持for循环的对象都是可迭代对象
for循环的语法格式:
for 变量名 in 可迭代对象:
pass'''字典暴露的是字典的key'''
d = {'username': 'jerry', 'age': 18}
for i in d:
print(i, d[i]) # username age
range关键字
- 方式1
for i in range(10): # 生成一个从0开始到9的数字
print(i)
for i in [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]:
print(i)
方式2
for i in range(3, 10): # 生成一个从3开始到9的数字列表 print(i)方式三
for i in range(0, 250, 25): # 第三个参数代表的是步长 print(i)
"""练习题:使用for循环生成这10页的地址"""
https://movie.douban.com/top250?start=0&filter= # 第一页
https://movie.douban.com/top250?start=25&filter= # 第二页
https://movie.douban.com/top250?start=50&filter= # 第三页
https://movie.douban.com/top250?start=75&filter= # 第四页
https://movie.douban.com/top250?start=100&filter= # 第五页
https://movie.douban.com/top250?start=225&filter= # 最后一页
base_url = 'https://movie.douban.com/top250?start=%s&filter='
for i in range(0, 2500, 25):
# print(base_url % i)
print('https://movie.douban.com/top250?start=%s&filter=' % i)
for+break
for i in range(10):
if i == 6:
break
print(i)
for+continue
for i in range(10):
if i == 6:
continue
print(i)
for+else
'''跟while循环的用法一样,中间如果有中断程序,else就不在走了'''
for i in range(10):
if i == 6:
break
print(i)
else:
print('hahh ')
for循环嵌套
for i in range(3):
for j in range(5):
print("*", end='')
print() # print()表示换行
Python条件控制和循环语句(if while for )的更多相关文章
- Python - 条件控制、循环语句 - 第十二天
Python 条件控制.循环语句 end 关键字 关键字end可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符,实例如下: Python 条件语句是通过一条或多条语句的执行结果(True 或 ...
- Python条件控制与循环语句
1. 条件控制 # if-elif-else结构 age = 12 if age < 4: price = 0 elif age < 18: price = 5 else: price = ...
- Shell脚本的条件控制和循环语句
条件判断:if语句 语法格式: if [ expression ] then Statement(s) to be executed if expression is true fi 注意:expre ...
- Shell学习(三)——Shell条件控制和循环语句
参考博客: [1]Shell脚本的条件控制和循环语句 一.条件控制语句 1.if语句 1.1语法格式: if [ expression ] then Statement(s) to be execut ...
- 04- Shell脚本学习--条件控制和循环语句
条件判断:if语句 语法格式: if [ expression ] then Statement(s) to be executed if expression is true fi 注意:expre ...
- If 条件控制 & while循环语句
Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 可以通过下图来简单了解条件语句的执行过程: if 语句 Python中if语句的一般形式如下所示: i ...
- Python条件判断和循环语句
一.条件判断语句 通过一条或多条语句的判断来决定是否执行代码块 1.if语句基本形式: if 判断条件: 语句块 例如: score=75if score>=60: print &q ...
- Python条件控制与循环
条件控制语句:if 循环语句:while.for 其他语句:continue.break.pass 1.if语句 # ================================ a = 1 if ...
- 07_Python的控制判断循环语句1(if判断,for循环...)_Python编程之路
Python的数据类型在前几节我们都简单的一一介绍了,接下来我们就要讲到Python的控制判断循环语句 在现实编程中,我们往往要利用计算机帮我们做大量重复计算的工作,在这样的情况下,需要机器能对某个条 ...
- Python学习--04条件控制与循环结构
Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...
随机推荐
- query查询原生sql
print(str(Teahcer.objects.filter(fans__gte=500).order_by('name').query)
- drf——反序列化校验源码(了解)、断言、drf之请求和响应、视图之两个视图基类
1.模块与包 # 模块与包 模块:一个py文件 被别的py文件导入使用,这个py文件称之为模块,运行的这个py文件称之为脚本文件 包:一个文件夹下有__init__.py # 模块与包的导入问题 '' ...
- 代码随想录算法训练营Day14 二叉树
代码随想录算法训练营 代码随想录算法训练营Day14 二叉树|理论基础 递归遍历 基础知识 二叉树都是通过栈来实现的. 二叉树的种类 在我们解题过程中二叉树有两种主要的形式:满二叉树和完全二叉树. 满 ...
- 由C# yield return引发的思考
前言 当我们编写 C# 代码时,经常需要处理大量的数据集合.在传统的方式中,我们往往需要先将整个数据集合加载到内存中,然后再进行操作.但是如果数据集合非常大,这种方式就会导致内存占用过高,甚至可能导致 ...
- Linux 调用约定
函数调用约定是对函数调用时如何传递参数的一种约定.关于它的约定有许多种,下面我们分 别从内核接口和用户接口两方面介绍32位和64位Linux的调用约定. 一.内核接口 x86-32系统调用约定 ...
- 大型 3D 互动开发和优化实践
开发背景 得益于"元宇宙"概念在前段时间的爆火,各家公司都推出了使用 3D 场景的活动或频道. 3D 场景相比传统的 2D 页面优点是多一个维度,同屏展示的内容可以更多,能完整的展 ...
- 【HMS Core】【In-App Purchases】应用内支付热门FAQ合集
近期收到很多开发者关于应用内支付服务的相关问题,主要集中在以下几个方面,今天和大家分享一下,希望给大家的开发集成带来帮助. [问题描述1] 近期,很多开发者收到关于"全面限制HTTP类型回 ...
- 尚医通-day12【token续期和就诊人管理】(内附源码)
页面预览 就诊人管理 就诊人列表 添加就诊人 查看就诊人 ![image-20230225060710 管理员系统用户管理 前面我们完成了用户登录.用户认证与就诊人管理,现在我们需要把这些信息在我们的 ...
- Solon 成为信通院可信开源社区、可信开源项目
自2021年9月17日成立以来,可信开源社区共同体共有五批新成员加入.在4月21日"OSCAR开源生态建设论坛"上,可信开源社区共同体又迎来2位正式成员和6位预备成员,Solon ...
- Linux系统运维之MYSQL数据库集群部署(主从复制)
一.介绍 Mysql主从复制,前段时间生产环境部署了一套主从复制的架构,当时现找了很多资料,现在记录下 二.拓扑图 三.环境以及软件版本 主机名 IP 操作系统 角色 软件版本 MysqlDB_Mas ...