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 <条件>: & ...
随机推荐
- Trailing commas
Trailing commas 尾逗号 https://caniuse.com/?search=trailing commas ESlint { "comma-dangle": [ ...
- Django : Security in Django
Security in Django https://docs.djangoproject.com/en/1.10/topics/security/ 1 Cross site scripting (X ...
- 使用 js 和 Beacon API 实现一个简易版的前端埋点监控 npm 包
使用 js 和 Beacon API 实现一个简易版的前端埋点监控 npm 包 前端监控,埋点,数据收集,性能监控 Beacon API https://caniuse.com/beacon 优点,请 ...
- MobX All In One
MobX All In One Simple, scalable state management. https://mobx.js.org/README.html https://github.co ...
- Flutter for web
Flutter for web https://flutter.dev/web https://github.com/flutter/flutter_web Dart https://github.c ...
- how to fetch html content in js
how to fetch html content in js same origin CORS fetch('https://cdn.xgqfrms.xyz/') .then(function (r ...
- hadoop支持lzo完整过程
简介 启用lzo 启用lzo的压缩方式对于小规模集群是很有用处,压缩比率大概能降到原始日志大小的1/3.同时解压缩的速度也比较快. 安装lzo lzo并不是linux系统原生支持,所以需要下载安装软件 ...
- 1094 The Largest Generation ——PAT甲级真题
1094 The Largest Generation A family hierarchy is usually presented by a pedigree tree where all the ...
- Go的数组
目录 数组 一.数组的定义 1.声明数组 2.初始化设值 3.指定位置设值 4.不指定长度初始化(了解) 二.数组的使用 三.数组的类型 四.数组的长度 五.迭代数组 1.初始化迭代 2.使用rang ...
- Docker 一键安装及Docker管理面板Portainer中文汉化
前言 Docker接触了一段时间了,批量操作过程中感觉太繁琐,所以找到了好评率比较高的Portainer面板,使用后感觉的确不错所以准备拿出来精力来做个汉化版,过程中发现词条非常多,所以暂时先汉 ...