IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python学习程序的组织结构详解(含if、while、for in、else、break、continue、嵌套等语句) -> 正文阅读

[Python知识库]Python学习程序的组织结构详解(含if、while、for in、else、break、continue、嵌套等语句)

程序的组织结构(计算机的流程控制)

任何简单或复杂的算法都可以由顺序结构、选择结构和循环结构这三种基本结构组成。 程序的组织结构包含以下三种:

1.顺序结构

程序从上到下顺序地执行代码,中间没有任何的判断和跳转,知道程序结束
例:“把大象放进冰箱一共分几步”

例:“把大象放进冰箱一共分几步”

print('1.把大象门打开')
print('2.把大象放进冰箱')
print('3.把冰箱门关上')
1.把大象门打开
2.把大象放进冰箱
3.把冰箱门关上

2.选择结构:if语句

程序根判断条件的布尔值选择性地执行部分代码,明确的让计算机知道在什么条件下,该去做什么。选择结构包含以下六种:

1.单分支结构

中文语义:如果…就…

语法结构:if 条件表达式:

    条件执行式  例:
money=1000   #余额
s=int(input('请输入取款金额'))  #取款金额
请输入取款金额600
if money>= s:   #判断余额是否充足,这是条件表达式
    money=money-s  #只有条件为True,才会执行
    print('取款成功,余额为:',money)
取款成功,余额为: 400
2.双分支结构

二选一执行

中文语义:如果…不满足…就… (二选一执行)

语法结构:if条件表达式:

    条件执行体1

    else:


    条件执行体2   例:从键盘输入一个整数,编写程序让计算机判断是奇数还是偶数
num=int(input('请输入一个整数'))
请输入一个整数8
if num%2==0:               #条件判断,如果是偶数和2的余数为0,奇数和2的余数为1. 二选一执行。
    print(num,'是偶数')     
else:
    print(num,'是奇数')
8 是偶数
3.多分支结构

多选一执行,常用于解决连续的区间段问题

中文语义:身高在180以上吗? 不是

    身高在170-180之间吗? 不是

    身高在160-170之间吗?不是
  

   身高在150-160之间吗?不是

    身高在150以下吗? 是

语法结构:if 条件表达式1: (条件表达式的为True,就不会往下继续执行了,条件表达式1为False,就会继续往下执行2)

      条件执行体1

    elif条件表达式2:

      条件执行体2

    elif条件表达式N:

      条件执行式N

    [else:]    (方括号的else是可以省略的,可写可不写) 

      条件执行体N+1   例:从键盘录入一个整数成绩90-100 A  80-89 B  70-79 C  60-69 D  0-59 E  小于0或大于100 为非法数据(不在范围內)
score=int(input('输入一个成绩:')) 
输入一个成绩:98
if score>=90 and score<=100:
    print('A级')
elif score>=80 and score<=89:
    print('B级')
elif score>=70 and score<=79:
    print('C级')
elif score<=60 and score<=69:
    print('D级')
elif score>=0 and score<=59:
    print('E级')
else:
    print('对不起,成绩有误,不在有限范围')
A级
4.嵌套if

语法结构:

if 条件表达式1:          #外分支结构条件表达式
    
    if 内层条件表达式1:    #内分支结构条件表达式,只有外分支结构的条件表达式1为True,才能执行此行
        
        内存条件执行体1   #内分支结构条件执行式
        
    else:
    
        内存条件执行体2
        
else:条件执行体          #外分支结构的条件执行式,当外分支结构的条件表达式为False的时候,执行此行

例:会员 >=200 8折

     >=100  9折
    
    不打折

非会员 >=200 9折

     不打折

例1:会员

answer=input('您是会员吗?y/n')
money=float(input('请输入您的购物金额'))
您是会员吗?y/ny
请输入您的购物金额300
if answer=='y':      #是会员
    if money>=200:
        print('打8折,付款金额为:',money*0.8)
    elif mone>=100:
        print('打9折,付款金额为:',money*0.9)
else:               #非会员
    if money>=200:
        print('打9.5折,付款金额:',money*0.95)
    else:
        print('不打折,付款金额:',money)        
打8折,付款金额为: 240.0

例2:非会员

answer=input('您是会员吗?y/n')
money=float(input('请输入您的购物金额'))
您是会员吗?y/nn
请输入您的购物金额300
if answer=='y':      #是会员
    if money>=200:
        print('打8折,付款金额为:',money*0.8)
    elif mone>=100:
        print('打9折,付款金额为:',money*0.9)
else:               #非会员
    if money>=200:
        print('打9.5折,付款金额:',money*0.95)
    else:
        print('不打折,付款金额:',money)  
打9.5折,付款金额: 285.0
5.条件表达式

条件表达式是 :if…else的简写

语法结构:X if 判断条件 else Y

运算法则:如果判断条件的布尔值为True,条件表达式的返回值为X,否则条件表示的返回值为False

例:从键盘录入两个整数,比较两个整数的大小

num_a=int(input('请输入一个整数'))
num_b=int(input('请输入一个整数'))
请输入一个整数10
请输入一个整数20
if num_a>=num_b:
    print(num_a,'大于等于',num_b)
else:
    print(num_a,'小于',num_b)
10 小于 20

条件表达式的写法(简化代码),也就是if…else的简写写法如下:

print(str(num_a)+'大于等于'+str(num_b)  if num_a>=num_b else  str(num_a)+'小于'+str(num_b))

10小于20
6.pass语句

语句什么都不做,只是一个占位符,用在语法上需要语句的地方

什么时候使用:先搭建语法结构,还没想好代码怎么写的时候

哪些语句一起使用:

if语句的条件执行体

for-in语句的循环体

定义函数时的函数体
answer=input('您是会员吗?y/n')    #判断是否是会员
if answer=='y':
    pass        #没想好是会员的时候代码怎么写,先用pass搭建语法结构,这样语法不会报错  
else:
    pass       #没想好是会员的时候代码怎么写,先用pass搭建语法结构,这样语法不会报错 
您是会员吗?y/ny

3.循环结构:while语句、for in语句

反复做同一件事情的情况,称为循环

循环结构的流程图

循环的分类:while

    for-in

while循环语法机构:

 while 条件表达式:
 
     条件执行式(循环体)

选择机构的if与循环结构while的区别:
if是判断一次,条件为True执行一行
while是判断N+1次,条件为True执行N次

#例:while 循环
a=1
#判断条件表达式
while a<10:       
    #执行条件执行体
    print(a)
    a+=1
1
2
3
4
5
6
7
8
9

while循环的执行流程

四部循环法:

初始化变量

条件判断

条件执行体(循环体)

改变变量  (初始化变量与条件判断的变量与改变的变量为同一个)

while循环的执行流程

例:计算0到4之间的累加和

sum=0                 #用于存储累加和
a=0                   #1.初始化标量
while a<5:           #2.条件判断
    sum+=a           #3.条件执行体(循环体)
    a+=1             #4.改变变量
print('和为',sum)    
和为 10

例:计算0-100之间的偶数和

sum=0
a=1
while a<=100:
    if a%2==0:        #替代代码  偶、奇数 if bool(a%2)==0:     if not bool (a%2): 
        sum+=a
    a+=1
print('1-100之间的偶数和',sum)
1-100之间的偶数和 2550

for-in 循环

in表达从(字符串、序列等)中依次取值,又称为遍历

for-in遍历的对象必须是可迭代对象

for-in 语法结构

for 自定义变量  in 可迭代对象:
    
    循环体

for-in的执行图

循环体内不需要访问自定义变量,可以将自定义变量替代为下_线
for item in 'Python':
    print(item)
P
y
t
h
o
n
for i in range(10):
    print(i)
0
1
2
3
4
5
6
7
8
9

如果在循环中不需要使用自定义变量,可将自定义变量写为“_”

for _ in range(5):    
    print('我爱学习')
我爱学习
我爱学习
我爱学习
我爱学习
我爱学习

例:使用for循环计算1-100之间的偶数和

sum=0   #用于储存偶数和
for a in range(1,101):
    if a%2==0:
        sum+=a
print('1-100之间偶数和:',sum)
1-100之间偶数和: 2550

4.流程控制语句break

用于结束循环结构,通常与分支结构if一起使用

for …in … :

......                

if ... :                

    break   

while(条件):

......                

if ... :                

    break 

例:从键盘录入密码,最多录入3次,如果正确就结束循环

例1.(for … in…)输入三次不正确就结束循环

for item in range(3):
    pwd=input('请输入密码:') 
    if pwd=='888':
        print('密码正确')
        break
    else:
        print('密码不正确')    
请输入密码:999
密码不正确
请输入密码:777
密码不正确
请输入密码:666
密码不正确
2.(for ... in...)输入正确就结束循环
for item in range(3):
    pwd=input('请输入密码:') 
    if pwd=='888':
        print('密码正确')
        break
    else:
        print('密码不正确')
请输入密码:888
密码正确

例3.用(while)输入三次不正确就结束循环

a=0                            #自定义变量
while a<3:                    #条件判断
    pwd=input('请输入密码:')  #条件执行体(循环体)
    if pwd=='888':
        print('密码正确')
        break
    else:
        print('密码不正确')
    a+=1                      #改变变量
请输入密码:777
密码不正确
请输入密码:999
密码不正确
请输入密码:666
密码不正确

例4.用(while)输入正确就结束循环

a=0                            #自定义变量        
while a<3:                    #条件判断
    pwd=input('请输入密码:')  #条件执行体(循环体)
    if pwd=='888':
        print('密码正确')
        break
    else:
        print('密码不正确')
    a+=1                     #改变变量
请输入密码:888
密码正确

5.流程控制语句continue

用于结束当前循环,进入下一次循环,通常与分支结构中的if一起使用

for … in …:

......

if ... :
    
    continue
    
...

while(条件):

......

if ... :
    
    continue
    
...

例:要求输出1到50之间所有5的倍数,5,10,15,20…

for item in range(1,51):
    if item%5!=0:
        continue
    print(item)
5
10
15
20
25
30
35
40
45
50

6.else语句

与else语句配合使用的三种情况( if ,else ,while )

if…:

.....

else:

......
1. if条件表达式不成立时执行else

while…:

......

else:

......

for…:

......

else:

......
2.与while,for搭配使用,没有碰到break时执行else

例1:与for搭配使用时,遇到break

for item in range(3):
    pwd=input('请输入密码:') 
    if pwd=='888':
        print('密码正确')
        break
    else:
        print('密码不正确')
else:                                #这里的else是和for搭配使用的
    print('对不起,三次密码均错误')
请输入密码:888
密码正确
for item in range(3):
    pwd=input('请输入密码:') 
    if pwd=='888':
        print('密码正确')
        break
    else:
        print('密码不正确')
else:                                #这里的else是和for搭配使用的
    print('对不起,三次密码均错误')
请输入密码:777
密码不正确
请输入密码:666
密码不正确
请输入密码:999
密码不正确
对不起,三次密码均错误

例2.与while搭配使用时,遇到break

a=0
while a<3:
    pwd=input('请输入密码')
    if pwd=='888':
        print('密码正确')
        break
    else:
        print('密码不正确')
    a+=1
else:
    print('对不起,三次密码均错误')
请输入密码888
密码正确
a=0
while a<3:
    pwd=input('请输入密码')
    if pwd=='888':
        print('密码正确')
        break
    else:
        print('密码不正确')
    a+=1
else:
    print('对不起,三次密码均错误')
请输入密码777
密码不正确
请输入密码999
密码不正确
请输入密码666
密码不正确
对不起,三次密码均错误

7. 嵌套循环

循环结构中又嵌套了另外的完整的循环结构,其中内层循环作为外层循环的循环体执行

例:输出一个三行四咧的矩形

for i in range(1,4):           #行数,执行三次,一次是一行
    for i in range(1,5):       #列数,一行中执行4次输出
        print('*',end='\t')     #输出的是*,不换行输出
    print()

*	*	*	*	
*	*	*	*	
*	*	*	*	
for i in range(1,10):
    for j in range(1,i+1):
        print(i,'*',j,'=',i*j,end='\t')
    print()
1 * 1 = 1	
2 * 1 = 2	2 * 2 = 4	
3 * 1 = 3	3 * 2 = 6   3 * 3 = 9	
4 * 1 = 4	4 * 2 = 8   4 * 3 = 12	4 * 4 = 16	
5 * 1 = 5	5 * 2 = 10	5 * 3 = 15	5 * 4 = 20	5 * 5 = 25	
6 * 1 = 6	6 * 2 = 12	6 * 3 = 18	6 * 4 = 24	6 * 5 = 30	6 * 6 = 36	
7 * 1 = 7	7 * 2 = 14	7 * 3 = 21	7 * 4 = 28	7 * 5 = 35	7 * 6 = 42	7 * 7 = 49	
8 * 1 = 8	8 * 2 = 16	8 * 3 = 24	8 * 4 = 32	8 * 5 = 40	8 * 6 = 48	8 * 7 = 56	8 * 8 = 64	
9 * 1 = 9	9 * 2 = 18	9 * 3 = 27	9 * 4 = 36	9 * 5 = 45	9 * 6 = 54	9 * 7 = 63	9 * 8 = 72	9 * 9 = 81	

8.二重循环中的break和continue

二重循环中的break和contiue用于控制本层循环

流程控制语句break与continue在二重循环中的使用

例:

for i in range(5):          #代表外层循环中要执行5次
    for j in range(1,10):   
        if j%2==0:
            break
        print(j)
1
1
1
1
1
for i in range(5):
    for j in range(1,10):
        if j%2==0:
            continue
        print(j,end='\t')
    print()
1	3	5	7	9	
1	3	5	7	9	
1	3	5	7	9	
1	3	5	7	9	
1	3	5	7	9	

小白学python的学习笔记,后续持续更新,敬请关注!共同学习进步,有问题的地方欢迎评论区留言讨论!点赞是我更新的动力,哈哈~~

下期见伙计们

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-01-03 16:02:37  更:2022-01-03 16:04:10 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 3:34:49-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码