Python编程基础:顺序结构、循环结构、程序跳转语句、pass空语句

本文主要是介绍Python编程基础:顺序结构、循环结构、程序跳转语句、pass空语句,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Python是一种简单而强大的编程语言,它提供了多种结构和语句,使得程序编写变得更加灵活和高效。在本文中,将介绍Python中的顺序结构、循环结构、程序跳转语句以及pass空语句,并解释如何正确使用它们。

目录

  • 程序的描述方式
    • 自然语言
    • 流程图
    • 伪代码
  • 程序的组织结构
    • 顺序结构
    • 选择结构
    • 循环结构for与while
  • 程序跳转语句
    • break和continue
    • pass空语句
  • 总结
    • 本章总结
    • 习题讲解

程序的描述方式

自然语言

自然语言:就是使用人类语言,直接描述程序,比如说要去计算一个圆的周长和面积,就可以使用之前所学过的IPO方式去进行描述。

在这里插入图片描述

流程图

流程图:是用一系列图形、流程线和文字描述程序的基本操作和控制流程,主要适用于较短的算法。

在这里插入图片描述
在这里插入图片描述

伪代码

伪代码:是介于自然语言和编程语言之间的一种算法描述语言,如果程序比较小,可以直接使用代码描述。

在这里插入图片描述

程序的组织结构

在这里插入图片描述

顺序结构

顺序结构:按程序语句的自然顺序,从上到下,依次执行每条语句的程序,它是程序当中最基本的语句。

在这里插入图片描述

在这里插入图片描述

# 顺序结构
# 赋值运算符的顺序,从右到左,先计算右侧的结果,再赋值给左侧的变量
name='摔跤猫子'
age=20
a=b=c=d=100 # 链式赋值
a,b,c,d='摔跤猫子' # 字符串分解赋值
print(a)
print(b)
print(c)
print(d)
print('----------典型的顺序结构:输入/输出语句----------')
name=input('请输入您的姓名:')
age=eval(input('请输入您的年龄:'))
print('您的姓名为:',name,',您的年龄为:',age)

选择结构

选择结构:也称分支结构,是按照条件选择执行不同的代码段。

在这里插入图片描述
在这里插入图片描述

# 单分支结构if
number=eval(input('请输入您的6位中奖号码:'))
# 使用if语句
if number==987654: # 等值判断print('恭喜您,中奖了!')
if number!=987654:print('您未中奖!')
print('以上if判断的表达式,是通过比较运算符计算出来的,结果是布尔值类型')n=98 # 赋值操作
if n%2: # 98%2的余数是0,0的布尔值是False,非0的布尔值是Trueprint(n,'是奇数') # 由于98和2的余数是0,所以改行代码不执行if not n%2: # not False的结果为Trueprint(n,'是偶数')print('----------判断一个字符串是否是空字符串----------')
x=input('请输入一个字符串:')
if x: # 在Python中一切皆对象,每个对象都有一个布尔值,而非空字符串的布尔值为True,空字符串的布尔值为Falseprint('x是一个非空字符串')if not x: # 空字符串的布尔值为False,取反,not False的值为Trueprint('x是一个空字符串')print('----------表达式也可以是一个单纯的布尔型变量----------')
flag=eval(input('请输入一个布尔类型的值:True或False'))
if flag:print('flag的值为True')
if not flag:print('flag的值为False')

使用if语句时,如果语句块中只有一句代码,可以将语句块直接写在冒号的后面。

在这里插入图片描述

a=10
b=5
if a>b:max=a # 语句块只有一句,赋最大值
print('a和b的最大值为:',max)

双分支结构:if...else...语法结构

在这里插入图片描述
在这里插入图片描述

# 双分支结构
number = eval(input('请输入您的6位中奖号码:'))
# if..else...
if number==123456:print('恭喜您中奖了')
else:print('您未中奖')# 以上代码可以使用条件表达式进行简化
print('恭喜您中奖了' if number==123456 else '您未中奖')

多分支结构

在这里插入图片描述

# 多分支结构
score=eval(input('请输入您的成绩:'))
if score<0 or score>100:print('请输入正确的成绩。')
elif 0<=score<60:print('成绩为E')
elif 60<=score<70:print('成绩为D')
elif 70<=score<80:print('成绩为C')
elif 80<=score<90:print('成绩为B')
else:print('成绩为A')

在这里插入图片描述

嵌套if的使用。

在这里插入图片描述
在这里插入图片描述

# 嵌套if的使用
answer=input('请问您喝酒了吗?')
if answer=='y': # 表示喝酒了proof=eval(input('请输入酒精含量:'))if proof<20:print('暂未构成酒驾,祝您一路顺风')elif proof<80:print('已构成酒驾,请下车')else:print('已构成醉驾,请下车')
else:print('你走吧,没你事了')

使用and连接多个选择条件。

在这里插入图片描述在这里插入图片描述

userName=input('请输入您的用户名:')
pwd=input('请输入您的密码:')
if userName == '摔跤猫子' and pwd == '123':print('验证通过')
else:print('账号或密码错误')

使用or连接多个判断条件。

在这里插入图片描述
在这里插入图片描述

# 使用or连接多个选择条件
score = eval(input('请输入您的分数:'))
if score<0 or score>100:print('请输入正确的分数')
else:print('您的分数为:',score)

Python3.11新特性,模式匹配。

在这里插入图片描述

# Python3.11新特性,模式匹配
score=input('请输入成绩等级:')
match score:case 'A':print('优秀')case 'B':print('良好')case 'C':print('中等')case 'D':print('及格')case 'E':print('不及格')

循环结构for与while

在这里插入图片描述

遍历字符串

for i in '摔跤猫子':print(i)

在这里插入图片描述

range函数,Python中的内置函数,产生一个[n,m]的整数序列,包含n,但是不包含m

for i in range(1,5):print(i)

在这里插入图片描述

# 计算1-10之间的累加和
h=0 # 用于计算累加和的变量
for i in range(1,11):h+=i # 相当于 h=h+iprint('累加和为:',h)

在这里插入图片描述

for…else…结构。

h=0 # 用于计算累加和
for i in range(1,11):h+=i
else:print('1-10之间的累加和为:',h)

在这里插入图片描述

无限循环while,需要注意的是在while循环当中你的初始化变量,条件判断的变量和改变的变量通常都为1个。

在这里插入图片描述
在这里插入图片描述

answer=input('今天要上班吗?请输入[y/n]:')
# 2.条件判断
while answer=='y':# 3.语句块print('早点下班')
# 4.改变变量answer=input('今天要上班吗?请输入[y/n]:')

使用无限循环while计算1-200之间的累加和。

在这里插入图片描述

v=0 # 定义变量存储累加和
# 1.初始化变量
i=1
# 2.条件判断
while i<=200:# 3.语句块v+=i# 4.改变变量i+=1 # 相当于i=i+1
print('1-200之间的累加和为:',v)

无限循环也有一种扩展形式叫做while-else结构,当你在while整个的循环当中全都执行完毕了,中途没有遇到任何break中断循环的情况,那么就可以使用while-else结构了。

在这里插入图片描述

v=0 # 定义变量存储累加和
# 1.初始化变量
i=1
# 2.条件判断
while i<=200:# 3.语句块v+=i# 4.改变变量i+=1 # 相当于i=i+1
else:print('1-200之间的累加和为:',v)

使用while循环模拟用户登录,在进行登录操作的时候,除了输入用户名和密码之外,再给它设置三次机会,三次均输入错误后就没办法登录系统了,三次之内,只要正确一次即通过

在这里插入图片描述

# 1.初始化变量
i=0
# 2.条件判断
while i<3:# 3.语句块userName=input('请输入用户名:')pwd=input('请输入密码:')# 登录操作if userName=='摔跤猫子' and pwd=='123':print('登录成功')# 需要改变循环变量,目的是为了退出循环i=4 # 退出while循环else:if i<2:print('用户名或密码错误,您还有',2-i,'次机会!')# 改变变量i+=1 # 相当于i=i+1
if i==3: # 当用户名或密码三次输错时,循环结束,进行提示print('账号已冻结,请联系管理员进行解封')

循环结构也可以互相嵌套,在一个循环结构中嵌套另外一个完整的循环结构就称为嵌套循环。理论上是可以无限嵌套的,但是在实际开发中,建议不要超过三层,因为在嵌套循环结构当中,内层循环实际上是在给外层循环做语句块部分的。

在这里插入图片描述

长方形和直角三角形的输出。

在这里插入图片描述

# 三行四列 长方形
for i in range(1,4): # 通过最外层循环 控制行数for j in range(1,5): # 内层循环控制打印的列数print('*',end='')print() # 空的print语句,作用是换行
print('----------------------------------------')
# 直角三角形
for i in range(1,6):for j in range(1,i+1):print('*',end='')print()

在这里插入图片描述

倒三角形。

for i in range(1,6):for j in range(1,7-i):print('*',end='')print()

在这里插入图片描述

等腰三角形。

在这里插入图片描述

for i in range(1,6): # 外层循环 执行五行for j in range(1,6-i): # 打印倒三角形print(' ',end='')for k in range(1,i*2): # 打印等腰三角形print('*',end='')print()

菱形

在这里插入图片描述

row=eval(input('请输入菱形的行数:'))
while row%2==0: # 判断行数的奇偶性,行数是偶数,重新输入# print('请重新输入菱形的行数:')row = eval(input('行数是偶数,请重新输入菱形的行数:'))
# 输出菱形
top_row=(row+1)//2 # 上半部分的行数
for i in range(1,top_row+1):for j in range(1,top_row+1-i): # 打印倒三角形print(' ',end='')for k in range(1,i*2): # 打印等腰三角形print('*',end='')print()
# 菱形下半部分
bottom_row=row//2 # 下半部分的行数
for i in range(1,bottom_row+1):for j in range(1,i+1):print(' ',end='')# 倒三角for j in range(1,2*bottom_row-2*i+2):print('*',end='')print()

空心菱形,它的最左侧和它的最右侧是*,其他的地方都是由空格组成。

在这里插入图片描述

row=eval(input('请输入菱形的行数:'))
while row%2==0: # 判断行数的奇偶性,行数是偶数,重新输入# print('请重新输入菱形的行数:')row = eval(input('行数是偶数,请重新输入菱形的行数:'))
# 输出菱形
top_row=(row+1)//2 # 上半部分的行数
for i in range(1,top_row+1):for j in range(1,top_row+1-i): # 打印倒三角形print(' ',end='')for k in range(1,i*2): # 打印等腰三角形if k==1 or k==i*2-1:print('*',end='')else:print(' ',end='')print()
# 菱形下半部分
bottom_row=row//2 # 下半部分的行数
for i in range(1,bottom_row+1):for j in range(1,i+1):print(' ',end='')# 倒三角for k in range(1,2*bottom_row-2*i+2):if k==1 or k==2*bottom_row-2*i+2-1:print('*',end='')else:print(' ',end='')print()

程序跳转语句

break和continue

在这里插入图片描述

程序跳转语句break在while无限循环中的使用。非正常结束不会执行else部分,当循环完整的执行完成之后,在整个的过程当中没有遇到任何break的时候会执行else部分。

在这里插入图片描述

z=0 # 定义一个变量存储累加和
i=1 # 初始化变量
while i<11: # 条件判断z+=i # 语句块if z>20:print('累加和大于20的当前数是:',i)breaki+=1 # 改变变量print('------------------')
i=0 # 初始化变量,统计登录的次数
while i<3: # 条件判断userName = input('请输入用户名:')pwd = input('请输入密码:')if userName=='摔跤猫子' and pwd =='123':print('登录成功')breakelse:if i <2:print('用户名或密码不正确,您还有',2-i,'次机会')i+=1 # 改变变量
else:print('账号已冻结')

break在遍历循环当中的使用。

在这里插入图片描述

程序就输出了一个摔跤,因为循环的时候它发现摔跤和猫不相等,if条件判断不成立,直接进行输出,输出完成之后又回到循环的判断处,从字符串中把猫取出来赋值给i,然后拿i再进行匹配,条件为true并执行了break,后续的代码都不再进行执行,循环结束。

在这里插入图片描述

for i in '摔跤猫子':if i == '猫':breakprint(i)

通过遍历循环判断用户名和密码

在这里插入图片描述

for i in range(3):userName = input('请输入用户名:')pwd = input('请输入密码:')if userName=='摔跤猫子' and pwd =='123':print('登录成功')breakelse:if i <2:print('用户名或密码不正确,您还有',2-i,'次机会')i+=1 # 改变变量
else:print('账号已冻结')

除了break语句之外还有一个跳转语句,就是continue,它跟break作用不同,break是用于退出循环结构,continue的作用是用于跳出本次循环。

在这里插入图片描述

计算1-100之间的偶数和。

在这里插入图片描述

z=0 # 定义一个变量存储累加和
i=0 # 初始化变量
while i<=100: # 条件判断# 语句块if i%2==1: # 奇数i+=1continue # 不再执行后面的代码# 累加求和的代码z+=ii+=1
print('1-100之间的偶数和为:',z)

在这里插入图片描述

continue在for循环当中的使用

在这里插入图片描述

s=0
for i in range(1,101):if i % 2 == 1:  # 奇数continues+=i
print('1-100之间的偶数和为:',s)

pass空语句

pass是Python中的保留字,在语法结构中只起到占位符作用。

在这里插入图片描述

如果只写一个if True会报错,因为没有写语句块,写一个pass后,语法结构就准确了。

在这里插入图片描述
在这里插入图片描述

总结

本章总结

  • 程序的描述方式有三种:自然语言、流程图和伪代码;
  • 程序的组织结构有三种:顺序结构、选择结构(分支结构)、循环结构;
  • 选择结构分单分支结构(if)、双分支结构(if...else...)和多分支结构(if...elif...else...);
  • Python3.11新特性模式匹配match...case...结构;
  • 循环结构有两种:遍历循环for和无限循环while
  • if结构可以互相嵌套,循环结构也可以互相嵌套,建议最多不超过三层;
  • breakcontinue只能用在循环结构中,break用于退出整个循环结构,continue用于结束本次循环而进入下一次循环;
  • 空语句pass起到占位符的作用,使语法结构完整、不报错。

习题讲解

📄1:以下选项符合Python语法要求且能够正常执行的是?
⬜️A:min=x if x<y=y
B:min=x if x<y else y
⬜️C:if(x>y) print(x)
⬜️D:min=x>y?x:y

📄2:下面代码的输出结果是?

在这里插入图片描述
⬜️A:0
⬜️B:1
C:1,3,5,7
⬜️D:0,2,4,6

📄3:以下选项中不能退出循环的是?
在这里插入图片描述
A:2
⬜️B:3
⬜️C:4
⬜️D:5

📄4:下面代码输出的图形是?
在这里插入图片描述
A:在这里插入图片描述

⬜️B:3

⬜️C:4

⬜️D:5

📄5:下面代码的输出结果是?

在这里插入图片描述
⬜️A:0
B:10
⬜️C:11
⬜️D:15

📄6:下面代码的输出结果是?
在这里插入图片描述
⬜️A:Welcome
B:Welcome to
⬜️C:BeiJing
⬜️D:Welcome to BeiJing

📄7:下面代码的输出结果是?
在这里插入图片描述

⬜️A:ppyytthhoonn
⬜️B:python
⬜️C:ppyytt
D:ppyytthoonn

📄8:以下程序中,while循环的执行次数是?

在这里插入图片描述
⬜️A:10次
⬜️B:4次
C:死循环
⬜️D:5次

这篇关于Python编程基础:顺序结构、循环结构、程序跳转语句、pass空语句的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/570356

相关文章

Spring三级缓存解决循环依赖的解析过程

《Spring三级缓存解决循环依赖的解析过程》:本文主要介绍Spring三级缓存解决循环依赖的解析过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、循环依赖场景二、三级缓存定义三、解决流程(以ServiceA和ServiceB为例)四、关键机制详解五、设计约

Java调用Python的四种方法小结

《Java调用Python的四种方法小结》在现代开发中,结合不同编程语言的优势往往能达到事半功倍的效果,本文将详细介绍四种在Java中调用Python的方法,并推荐一种最常用且实用的方法,希望对大家有... 目录一、在Java类中直接执行python语句二、在Java中直接调用Python脚本三、使用Run

使用Python开发Markdown兼容公式格式转换工具

《使用Python开发Markdown兼容公式格式转换工具》在技术写作中我们经常遇到公式格式问题,例如MathML无法显示,LaTeX格式错乱等,所以本文我们将使用Python开发Markdown兼容... 目录一、工具背景二、环境配置(Windows 10/11)1. 创建conda环境2. 获取XSLT

Python如何调用指定路径的模块

《Python如何调用指定路径的模块》要在Python中调用指定路径的模块,可以使用sys.path.append,importlib.util.spec_from_file_location和exe... 目录一、sys.path.append() 方法1. 方法简介2. 使用示例3. 注意事项二、imp

PyQt5+Python-docx实现一键生成测试报告

《PyQt5+Python-docx实现一键生成测试报告》作为一名测试工程师,你是否经历过手动填写测试报告的痛苦,本文将用Python的PyQt5和python-docx库,打造一款测试报告一键生成工... 目录引言工具功能亮点工具设计思路1. 界面设计:PyQt5实现数据输入2. 文档生成:python-

Python中Flask模板的使用与高级技巧详解

《Python中Flask模板的使用与高级技巧详解》在Web开发中,直接将HTML代码写在Python文件中会导致诸多问题,Flask内置了Jinja2模板引擎,完美解决了这些问题,下面我们就来看看F... 目录一、模板渲染基础1.1 为什么需要模板引擎1.2 第一个模板渲染示例1.3 模板渲染原理二、模板

使用Python创建一个功能完整的Windows风格计算器程序

《使用Python创建一个功能完整的Windows风格计算器程序》:本文主要介绍如何使用Python和Tkinter创建一个功能完整的Windows风格计算器程序,包括基本运算、高级科学计算(如三... 目录python实现Windows系统计算器程序(含高级功能)1. 使用Tkinter实现基础计算器2.

Python开发文字版随机事件游戏的项目实例

《Python开发文字版随机事件游戏的项目实例》随机事件游戏是一种通过生成不可预测的事件来增强游戏体验的类型,在这篇博文中,我们将使用Python开发一款文字版随机事件游戏,通过这个项目,读者不仅能够... 目录项目概述2.1 游戏概念2.2 游戏特色2.3 目标玩家群体技术选择与环境准备3.1 开发环境3

Python中模块graphviz使用入门

《Python中模块graphviz使用入门》graphviz是一个用于创建和操作图形的Python库,本文主要介绍了Python中模块graphviz使用入门,具有一定的参考价值,感兴趣的可以了解一... 目录1.安装2. 基本用法2.1 输出图像格式2.2 图像style设置2.3 属性2.4 子图和聚

Python使用Matplotlib绘制3D曲面图详解

《Python使用Matplotlib绘制3D曲面图详解》:本文主要介绍Python使用Matplotlib绘制3D曲面图,在Python中,使用Matplotlib库绘制3D曲面图可以通过mpl... 目录准备工作绘制简单的 3D 曲面图绘制 3D 曲面图添加线框和透明度控制图形视角Matplotlib