python基础之流程控制(1)
一、分支结构:if 判断
1、什么要有if 判断语句?
让计算机可以像人一样根据条件进行判断,并根据判断结果执行相应的流程。
2、基本结构
- 单分支结构
# 单分支
if 条件1:
代码1
代码2
代码3
示例1:
# 如果身高高于1.8米,就是大帅哥
hight = 1.85
if hight > 1.8:
print("大帅哥就是你!")
- 双分支结构
# 双分支
if 条件1:
代码1
代码2
代码3
else:
代码1
代码2
代码3
示例2:
# 如果身高高于1.8米,就是大帅哥,否则就不是
hight = 1.75
if hight > 1.8:
print("大帅哥就是你!")
else:
print("你不是大帅哥")
- 多分支
# 多分支
if 条件1:
代码1
代码2
代码3
elif 条件2:
代码1
代码2
代码3
else:
代码1
代码2
代码3
示例3:
# 如果身高高于1.8米,就是大帅哥,
# 如果钱多于1000万,就是土豪
# 如果身高高于1.8米,钱还多于1000万,就是高富帅
# 否则啥也不是
hight = 1.85
money = 2000
if hight > 1.8 and money > 1000:
print("你是高富帅!")
elif money >1000:
print("你是土豪")
elif hight > 1.8:
print("你是帅哥!")
else:
print("你是好人")
3、if 嵌套
示例4:
# 如果是男生,就选运动,女生就选舞蹈
# 如果男生身高大于1.8米,就选篮球
gender = "male"
hight = 1.85
if gender == "male":
if hight > 1.8:
print("选篮球")
else:
print("选运动")
else:
print("选舞蹈")
注意!!
- 在if 判断中,以4格空格键代表代码层级关系,不可以随便缩进;同行代码自上而下依次运行;
- if 后面可以跟条件可以是任意表达式,但执行结果必须为布尔类型。所以if判断条件语句可以为隐式布尔值。
二、循环结构(1):while循环
1、为什么要有循环结构?
为了让计算机可以像人一样循环执行某件事
2、语法结构
语法:
while 条件:
代码1
代码2
代码3
当while后面跟的条件语句为真的时候,while循环就会重复执行下面的代码语句,当条件语句为假的时候,循环会停止
示例1:
# 打印1-10
i = 1
while i < 11:
print(i)
i +=1
3、结束while循环的两种方式
- break:当while循环中出现break时,就会退出当层循环,如果有多层循环,需要一层一层的退出;
示例2:

# 用户可以输入用户、密码
# 输入正确后,显示欢迎登陆
# 用户输错可以继续输入,如果输错三次,退出程序 i = 1
while True: name = input("请输入你的用户名:")
pwd = input("请输入你的密码:") if i > 2:
print("今日输入超过上限,账户锁定!")
break if name == "zhangdada" and pwd == "123":
print("欢迎登陆!")
break
else:
print("用户名或者密码错误!")
i += 1
- 条件改为假:当满足某种条件时,将while后的条件语句改为假。需要注意的是,这种方法需要运行完本次循环,下次循环结束。
示例3:

# 当输错用户名或者密码时,退出本次循环
tag = True
while tag:
inp_name = input("请输入您的用户名:")
inp_pwd = input("请输入您的密码:") if inp_name == "egon" and inp_pwd == "123":
print("login successful")
tag = False
else:
print("username or password error") print('======>')
当用户输错用户名或者密码后,下面的打印命令还是会执行,而不是立刻退出。
4、while + continue
continue 的作用:当循环运行到continue,调过本次循环,进入下次循环,而不是退出循环。
示例4:

# 打印1 2 3 5 6 8 9
i = 1
while i < 10:
if i == 4 or i == 7:
i += 1
continue
print(i)
i += 1
5、while + else
else下代码只有在while正常结束后才会运行,break退出的不会执行
示例5:
# 打印1-10,在打印完毕后最后一行打印特殊符号
i = 1
while i < 11:
print(i)
i += 1
else:
print("*"*10)
三、两层while循环嵌套
"""
编写一个程序
用户可以输入用户名和密码
用户有三次机会
登录成功可以进行相应的操作
输入Q退出系统
"""
name_list = ["zhangdada","wangxiaoxiao","lizhongzhong"]
pwd_list = ["123","456","789"]
info = ["1:存款","2:取款","3:转账","4:查询"] print("欢迎使用本系统,退出请输入Q") tag =True
i = 0
while tag: name = input("请输入你的用户名:")
pwd = input("请输入你的密码:") if name == "Q" or pwd == "Q": # 退出条件
tag = False
break if i >= 2: # 输入次数判断
print("您今日的次数已用完,账户锁定!")
break if name not in name_list or pwd not in pwd_list: # 登录逻辑
i += 1
print("用户名或者密码错误!")
continue
else: for i in info: # 业务逻辑展示
print("****%s*****" % i) while tag: # 业务逻辑循环
yewu = input("请输入你要办理的业务对应数字:") if yewu == "Q": # 退出条件
tag = False
break if yewu == "2":
print("您已取款:1000元")
elif yewu == "1":
print("您已存款:1000元")
elif yewu == "3":
print("您已转账: 3000元")
elif yewu == "4":
print("您的账户余额为:38028元")
else:
print("输入错误,请从新输入")
python基础之流程控制(1)的更多相关文章
- python基础之流程控制、数字和字符串处理
流程控制 条件判断 if单分支:当一个“条件”成立时执行相应的操作. 语法结构: if 条件: command 流程图: 示例:如果3大于2,那么输出字符串"very good" ...
- python基础之流程控制(2)
今天将是基础篇的最后一篇,咱们来补上最后一个内容,流程控制for循环 For 循环 一.为什么有for循环? for循环能做的事情,while循环全都可以实现,但是在某些情境下,for循环相对于whi ...
- python基础之流程控制
流程控制之----if 流程控制,是指程序在运行时,个别的指令(或者是陈述.子程序)运行或者求值的顺序.人生道路上的岔口有很多,在每个路口都是一个选择,在每个路口加上一个标签,选择哪个就是满足哪个条件 ...
- python基础:流程控制案例:
1,简述编译型与解释型的语言,且分别列出你知道的哪些语言属于编译型,哪些属于解释型. 答:简单理解编译型语言类似谷歌翻译,整篇读入整篇翻译,代表语言有C语言,解释型语言类似同 声传译,读入一行翻译 ...
- python基础之流程控制(if判断和while、for循环)
程序执行有三种方式:顺序执行.选择执行.循环执行 一.if条件判断 1.语句 (1)简单的 if 语句 (2)if-else 语句 (3)if-elif-else 结构 (4)使用多个 elif 代码 ...
- Python基础之流程控制for循环
目录 1. 语法 2. for+break 3. for+continue 4. for循环嵌套 1. 语法 while循环可以对任何内容循环,但循环次数不可控 for循环基于容器类型的长度,循环次数 ...
- Python 基础知识----流程控制
判断语句 循环语句 嵌套
- Python基础之流程控制if判断
目录 1. 语法 1.1 if语句 1.2 if...else 1.3 if...elif...else 2. if的嵌套 3. if...else语句的练习 1. 语法 1.1 if语句 最简单的i ...
- Python基础之流程控制while循环
目录 1. 语法 2. while+break 3. while+continue 4. while+else 1. 语法 最简单的while循环如下: ''' while <条件>: & ...
随机推荐
- nvm install node error
nvm install node error ➜ mini-program-all git:(master) nvm install 10.15.3 Downloading and installin ...
- MBP & battery
MBP & battery 实际:3 + 1 个小时左右 4 个小时左右 shit apple 10 小时 Chrome bug https://appleinsider.com/articl ...
- flutter 插件调用callback函数
dart plugin class TestLib { static MethodChannel _channel = const MethodChannel('test_lib') ..setMet ...
- 转换时间戳,兼容webkit和IE
var date="2018-6-6"; var test=Date.parse(date.replace(/-/g,"/"));console.log(tes ...
- VAST生态驱动下,NGK算力增量效应初现!
VAST维萨币上线的消息放出来之后,NGK算力的价格一直在上涨,其实这也不难理解,因为VAST维萨币需要VAST星光值进行兑换,VAST星光值又需要SPC算力福利代币进行挖矿释放的,SPC算力福利代币 ...
- NGK公链脱颖而出,成为值得期待的项目!
当下2020年是动荡的一年,全世界经济危机汲汲可危,在这个特殊的时刻,有人抱怨说这是最坏的年代,也有人庆幸说这是最好的年代,历史不会重演,但总是惊人的相似,首先带你回顾一下上一次金融危机出现的2008 ...
- 1095 Cars on Campus——PAT甲级真题
1095 Cars on Campus Zhejiang University has 6 campuses and a lot of gates. From each gate we can col ...
- HDFS中的NameNode名节点——FSimage
HDFS缓冲区 Fsimage 文件映射,Edits文件操作记录. 与ES的缓冲区不同,ES是维护数据的变更,而HDFS缓冲区是用于名结点维护文件系统元数据(目录树)的机制. 在HDFS集群中,Nam ...
- MYSQL bin_log 开启及数据恢复
参考博客: A:https://www.jianshu.com/p/55b0d52edca2 B:https://www.cnblogs.com/martinzhang/p/3454358.html ...
- 基于【腾讯云函数】/【GitHub Actions】/【Docker】的每日签到脚本(支持多账号使用)
每日签到集合 基于[腾讯云函数]/[GitHub Actions]/[Docker]的每日签到脚本 支持多账号使用 特别声明: 本仓库发布的脚本及其中涉及的任何解锁和解密分析脚本,仅用于测试和学习研究 ...