python程序的三种执行结构
一、分支结构:根据条件判断的真假去执行不同分支对应的子代码
1.1 if判定
完整语法如下:
if 条件1: #条件可以是任意表达式,如果条件1为True,则依次执行代码。
代码1
代码2
...
elif 条件2:#如果条件2为True,则依次执行代码。
代码3
代码4
...
else: #如果是其他情况,则依次执行代码。
代码5
代码6
...
语法特点:
score=input('>>: ')
score=int(score)
if score >= 90:
print('优秀')
elif score >= 80:
print('良好')
elif score >= 70:
print('普通')
else:
print('很差')
if 嵌套举例:
age_of_girl=20
height=165
weight=99
is_pretty=True
success=False if age_of_girl >= 18 and age_of_girl < 22 and height > 160 and weight < 100 and is_pretty == True:
if success:
print('你好!')
else:
print('我喜欢你')
else:
print('阿姨好')
二、循环结构:重复执行某段代码块
2.1 while 循环
2.11循环的步骤:
步骤1:如果条件为真,那么依次执行:代码1、代码2、代码3、......
步骤2:执行完毕后再次判断条件,如果条件为True则再次执行:代码1、代码2、代码3、......,如果条件为False,则循环终止
2.12语法结构:
while 条件:
代码1
代码2
代码3
举例:
username = "marsha"
password = "123456"
count = 0 # 记录错误验证次数,避免重复代码
while count < 3:
inp_name = input("请输入用户名:")
inp_pwd = input("请输入密码:")
if inp_name == username and inp_pwd == password:
print("登陆成功")
else:
print("输入的用户名或密码错误!")
count += 1
2.13 结束while循环的方式
A: while循环 + break # break 用于结束本层循环,要结束几层循环就要用几个break
username = "marsha"
password = "123456"
count = 0
while count < 3: # 第一层循环
inp_name = input("请输入用户名: ")
inp_pwd = input("请输入密码: ")
if inp_name == username and inp_pwd == password:
print("登陆成功")
while True: # 第二层循环
cmd = input('>>: ')
if cmd == 'quit':
break # 用于结束本层循环,即第二层循环
print('run <%s>' % cmd)
break # 用于结束本层循环,即第一层循环
else:
print("输入的用户名或密码错误!")
count += 1
B: break循环 +continue : # continue用于结束本次循环
number=11 # 打印1到10之间,除7以外的所有数字
while number>1:
number -= 1
if number==7:
continue # 结束本次循环
print(number)
C: break循环 +tag #在循环中用同一个变量tag,如果tag为True,则继续,如果tag为False,就可以在某一层直接退出所用层的循环。
username = "marsha"
password = "123456"
count = 0
tag = True
while tag:
inp_name = input("请输入用户名:")
inp_pwd = input("请输入密码:")
if inp_name == username and inp_pwd == password:
print("登陆成功")
while tag:
cmd = input('>>: ')
if cmd == 'quit':
tag = False # tag变为False, 所有while循环的条件都变为False
break
print('run <%s>' % cmd)
break # 用于结束本层循环,即第一层循环
else:
print("输入的用户名或密码错误!")
count += 1
D: break循环+else # 当while 循环正常执行完并且中间没有被break 中止的话,就会执行else后面的语句,所以我们可以用else来验证,循环是否正常结束
count = 0
while count <= 5 :
count += 1
print("Loop",count)
else:
print("没有被break打断,else 正常运行了")
count = 0
while count <= 5 :
count += 1
if count == 3:
break
print("Loop",count)
else:
print("见不到我了") #被break 打断,else 不会运行了
2.2 for循环: #在循环取值(即遍历值)时for循环比while循环的使用更为简洁
2.21语法结构:
for 变量名 in 可迭代对象: # 可迭代对象可以是字符串\列表\字典
代码一
代码二
...
举例:
for count in range(6): # range(6)会产生从0-5这6个数
print(count)
for k in {'name':'marsha','age':49,'gender':'male'}: # for 循环默认取的是字典的key赋值给变量名k
print(k)
#请用for循环嵌套的方式打印如下图形:
*****
*****
***** for i in range(3):
for j in range(5):
print("*",end='')
print() # print()表示换行
#请用for循环打印九九乘法表 for i in range(1,10):
for j in range(1,i+1):
print('%s*%s=%s' %(i,j,i*j),end=' ')
print()
#请用for循环打印金字塔 # 分析
'''
#max_level=5
* # current_level=1,空格数=4,*号数=1
*** # current_level=2,空格数=3,*号数=3
***** # current_level=3,空格数=2,*号数=5
******* # current_level=4,空格数=1,*号数=7
********* # current_level=5,空格数=0,*号数=9 # 数学表达式
空格数=max_level-current_level
*号数=2*current_level-1
''' # 实现:
max_level=5
for current_level in range(1,max_level+1):
for i in range(max_level-current_level):
print(' ',end='') #在一行中连续打印多个空格
for j in range(2*current_level-1):
print('*',end='') #在一行中连续打印多个空格
print()
2.22 for循环与break\continue的使用同while
三、顺序结构(略)
python程序的三种执行结构的更多相关文章
- python程序的三种控制结构
程序的三种控制结构 什么是控制结构? """ 程序有三种基本结构组成:顺序结构.分支结构.循环结构.任何程序都是由这三种基本结构组成. 顺序结构是程序按照线性顺序依次执行 ...
- C语言程序的三种基本结构
1.程序结构:在C语言程序中,一共有三种程序结构:顺序结构.选择结构(分支结构).循环结构: 顺序结构:从头到尾一句接着一句的执行下来,直到执行完最后一句: 选择结构:到某个节点后,会根据一次判断的结 ...
- 操作系统+编程语言的分类+执行python程序的两种方式+变量
1.什么是操作系统? 操作系统就是一个协调\管理\控制计算机硬件资源与软件资源的一个控制程序. 2.为何要操作系统? a.把复杂的硬件操作封装成简单的功能\接口用来给用户或者程序来使用(文件) b.把 ...
- day05-1 执行Python程序的两种方式
目录 执行Python程序的两种方式 第一种:交互式 第二种:命令行式 三个步骤 两种方式的区别 执行Python程序的两种方式 第一种:交互式 在cmd中运行 优点:直接给出结果,执行效率高,及时报 ...
- 执行Go程序的三种方式及Go语言关键字
执行 Go 程序的三种方式及 Go 语言关键字 执行 Go 程序的三种方式 一.使用 go run 命令 二.使用 go build 命令 Step1. 对 go 源码源文件执行 go build 命 ...
- 周一02.3运行python程序的两种方式
一.运行python程序的两种方式 方法一:交互式: 优点:输入一行代码立刻返回结果 缺点:无法永久保存代码 方法二: ...
- linux系统编程之信号(八):三种时间结构及定时器setitimer()详解
一,三种时间结构 time_t://seconds struct timeval { long tv_sec; /* seconds */ long tv_usec; /* microsecond ...
- 【C语言入门教程】3.1 程序的 3 种基本结构
程序设计是一个问题求解的过程,解决问题的步骤可看作是程序的控制结构.简单地说,程序的运行过程就是数据输入.数据处理.数据输出 3 个步骤.其中,数据处理过程是否快捷和准确,主要依赖于程序控制结构的设计 ...
- Tomcat部署发布JSP应用程序的三种方法 (转)
Tomcat部署发布JSP应用程序的三种方法 1.直接放到Webapps目录下 Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应 ...
随机推荐
- RocketMQ在Windows和Linux下的安装
windows下的RocketMQ的安装 鉴于Quick Start,选择单mater模式,环境简单: win10 64 jdk1.8 maven 3.5.4 Git rocketMQ安装版本 4.4 ...
- SqlServer数据库表生成C# Model实体类SQL语句——补充
在sql语句最前边加上 use[数据库名] 原链接:https://www.cnblogs.com/jhli/p/11552105.html --[SQL骚操作]SqlServer数据库表生成C ...
- 生成树协议(STP)的精髓知识
STP生成树协议 1.STP介绍 2.STP生成树算法 1.STP - Spanning tree protocol (生成树协议)是逻辑上断开环路,防止广播风暴的产生.当线路故障,阻塞接口 ...
- 《Effective Python》笔记——第3章 类与继承
一.尽量用辅助类来维护程序的状态 如下,用字典存储简单数据 class SimpleGradebook(): def __init__(self): self.__grades = {} def ad ...
- MySQL高级篇笔记
目录 MySQL体系结构 存储引擎特点 InnoDB底层文件 MyISAM底层文件 索引 慢查询日志 profile详情 explain执行计划 EXPLAIN 执行计划各字段含义: 索引使用 最左前 ...
- MASA Framework - DDD设计(1)
目录 MASA Framework - 整体设计思路 MASA Framework - EventBus设计 MASA Framework - MASA Framework - DDD设计(1) DD ...
- C#操作读写INI配置文件
一个完整的INI文件格式由节(section).键(key).值(value)组成.示例如:[section]key1=value1key2=value2; 备注:value的值不要太长,理论上最多不 ...
- 【Java8新特性】Optional类在处理空值判断场景的应用 回避空指针异常 编写健壮的应用程序
一.序言 空值异常是应用运行时常见的异常,传统方式为了编写健壮的应用,常常使用多层嵌套逻辑判断回避空指针异常.Java8新特性之Optional为此类问题提供了优雅的解决方式. 广大程序员朋友对空值异 ...
- 2. 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml
目录 堪比JMeter的.Net压测工具 - Crank 入门篇 堪比JMeter的.Net压测工具 - Crank 进阶篇 - 认识yml 堪比JMeter的.Net压测工具 - Crank 进阶篇 ...
- Renix中如何实现流调速——网络测试仪实操
在Renix操作中有时我们需要进行流调速,那么如何实现呢?接下来为您详细介绍. 第一步:预约测试资源 首先打开Renix软件,连接机箱, 预约端口 第二步:流调速 例如:端口下有3条流,分别设置为10 ...