程序结构

程序设计中有 3 种基础的结构,分别是顺序结构、选择结构和循环结构。

本章节之前编写的多数例子都是顺序结构的,这一张主要介绍一下选择结构和循环结构。

选择语句

最简单的 if 语句

Python 中使用 if 保留字来组成选择语句,其最简单的语法形式如下:

if 表达式:

语句块

其中,表达式可以是一个单纯的布尔值或者变量,也可以是比较表达式或逻辑表达式,如果表达式为真,则执行 “语句块”,如果表达式为假,就跳过 “语句块”,继续执行后面的代码。

示例1:

number = 5

if number == 5:

print( "number 的值是5" )

注意:if 语句后面的冒号 ‘:’ 很容易被遗忘

示例2:

if bmi < 18.5:

print( "您的 BMI 指数为:" + str(bmi) )

print( "您的体重过轻了。。。" )

注意:第二个 print() 没有使用缩进,无论 bmi 的值是否小于 18.5 都会执行,如果第二个 print() 也使用了缩进,那么只有条件成立时才会执行

if…else 语句

if 表达式:

语句块1

else:

语句块2

程序中使用 if…else 语句时,如果出现 if 语句多余 else 语句的情况,那么该 else 语句将会根据缩进确定该 else 语句是属于哪个 if 语句的。

示例:

a = 0

if a >= 0:

if a > 0:

print( "a 大于零" )

else:

print( "a 小于零" )

if…elif…else 语句

在 Python 中是没有 switch 语句的,所以实现多重选择的功能,只能使用 if…elif…else 多分支语句或者 if 语句的嵌套

if 表达式1:

语句块1

elif 表达式2:

语句块2

elif 表达式3:

语句块3

...

else:

语句块n

示例:

age = int( input( "请输入您的年龄:" ) )

if age <= 18:

print( "您的年龄还小,要努力学习哦!" )

elif 18 < age <= 30:

print( "您现在的阶段正是努力奋斗的黄金阶段!" )

elif 30 < age <= 50:

print( "您现在的阶段正是人生的黄金阶段!" )

else:

print( "最美不过夕阳红!" )

if 语句的嵌套

if 选择语句可以有多种嵌套方式,开发程序时,可以根据自身需要选择合适的嵌套方式,但一定要严格控制好不同级别代码块的缩进量

示例:

# 判断输入年份是不是闰年

# 判断方法:四年一润,百年不闰,四百年再润

year = int( input( "请输入年份:" ) )

if year % 4 == 0:

if year % 100 == 0:

if year % 400 == 0:

print( year, "年是闰年" )

else:

print( year, "年不是闰年" )

else:

print( year, "年是闰年" )

else:

print( year, "年不是闰年" )

循环语句

在 Python 中,循环主要有两种,一种是重复一定次数的循环,称为计数循环,如 for 循环;另一种是一直重复,直到条件不满足时才结束的循环,称为条件循环,如 while 循环。

注意:在其它语言中,条件循环还包括 do…while 循环,但是在 Python 中是没有 do…while 循环的

while 循环

while 条件表达式:

循环体 # 一组被重复执行的语句

示例:郑州看胎记费用http://www.zykdtj.com/

print( "今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问何几 ?\n" )

none = True # 作为循环条件的变量

number = 0 # 计数的变量

while none:

number += 1

if number % 3 == 2 and number % 5 == 3 and number % 7 == 2:

print( "答曰:这个数是", number )

none = False

上述例子运行结果为 23

在使用 while 循环语句时,一定不要忘记添加将循环条件变为 False 的代码,否则将出现死循环。

for 循环

for 迭代变量 in 对象:

循环体

其中,迭代变量用于保存读取出的值,而对象为要遍历或迭代的对象,该对象可以是任何有序的序列对象,如字符串、列表和元组等。

示例1:

print( "计算 1+2+3+...+100 的结果为:" )

result = 0 # 保存累加结果的变量

for i in range(101):

result += i # 实现累加功能

print(result) # 在循环结束时输出结果

补充内容:上面代码中使用了 range() 函数,该函数为 Python 内置的函数,用于生成一系列连续的整数,多用于 for 循环语句中,其语法格式如下:

range(start, end, step)

start:用于指定计数的起始值,可以省略。如果省略,则从 0 开始。

end:用于指定计数的结束值(但不包括该值),不能省略。当 range() 函数只有一个参数时,即表示指定计数的结束值。

step:用于指定步长,即两数之间的间隔,可以省略。如果省略,则表示步长为 1。

注意:在使用 range() 函数时,如果只有一个参数,那么表示指定的是 end;如果只有两个参数,则表示指定的是 start 和 end;只有三个参数都存在时,最后一个才表示步长。

示例2:

for i in range(1, 10, 2):

print( i, end = ' ' )

上述例子运行结果为 1 3 5 7 9

如果想让 print() 语句输出的内容在一行上显示,使用 print() 函数时,不能直接加逗号,需要加上 ", end = ‘分隔符’ "

循环嵌套

在 Python 中,允许在一个循环体中嵌入另一个循环体,这称为循环嵌套。在 Python 中,for 循环和 while 循环都可以进行循环嵌套。

示例:

for i in range(1, 10, 1): # 输出 9 行

for j in range(1, i + 1): # 输出与行数相等的列

print( str(j) + " X " + str(i) + " = " + str(i * j) + "\t", end = "" )

print(") # 换行

上述例子输出 1-9 乘法口诀表

break、continue 和 pass 语句

break

break 语句可以终止当前的循环,包括 while 和 for 在内的所有控制语句。

break 语句一般会结合 if 语句进行搭配使用,表示在某种条件下跳出循环。如果使用嵌套循环,break 循环将跳出最内层的循环。

示例:

print( "今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问何几 ?\n" )

for number in range(100):

if number % 3 == 2 and number % 5 == 3 and number % 7 == 2: # 判断是否符合条件

print( "答曰:这个数是", number ) # 输出符合条件的数

break # 跳出循环

continue

continue 语句的作用没有 break 强大,它只能终止本次循环提前进入下一次循环。

continue 语句一般会结合 if 语句进行搭配使用,表示在某种条件下,跳出当前循环的剩余语句,然后继续进行下一轮循环。如果使用嵌套循环,continue 语句将只跳过最内层的循环中的剩余语句。

示例:

total = 0 # 用于保存累加和的变量变量

for number in range(1, 100):

if number % 2 == 1: # 判断是否符合条件

continue # 继续下一次循环

total += number # 累加偶数的和

print( "1 到 100 之间(不包括 100)的偶数和为:", total ) # 输出累加的和

pass

Python 中还有一个 pass 语句,表示空语句。它不做任何事,一般起到占位的作用。

示例:

for i in range(1, 10):

if i % 2 == 0: # 判断是否为偶数

print( i, end = ' ' )

else: # 不是偶数

pass # 占位符,不作任何操作

python顺序控制语句_Python学习之 流程控制语句相关推荐

  1. java跳转控制语句有哪些_Java语言基础学习之流程控制语句和跳转控制语句实例分析...

    本文主要向大家介绍了Java语言基础学习之流程控制语句和跳转控制语句实例分析,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. 一.流程控制语句 在一个程序执行的过程中,各条语句的执行顺 ...

  2. python语言流程控制语句的格式_慢步学python,编程基础知识,流程控制语句if

    慢步业余学python编程,今天休息继续分享python编程知识. 面向过程编程,重要的是程序的流程,今天说说流程控制语句if. 在我们高中数学中就有流程图的学习,只是没有真正应用起来而已,办公软件也 ...

  3. Java程序员学习Go_流程控制语句

    流程控制语句 流程控制语句 if else(分支结构) for(循环结构) switch case 跳出循环在Java和go中的关键字:break 继续下次循环在Java和go中的关键字:contin ...

  4. 如何使用python装饰器_Python学习之如何使用装饰器 @decorator

    建议大家在看这篇文章之前还是点击上面这篇文章看一下,先了解一下什么是装饰器之后再看. 猿人学python之我的学习笔记分享:如何使用装饰器 @decorator 上面代码中使用装饰器的方法看起来有点复 ...

  5. 自学python如何就业_python学习:想要自学Python达到就业的水平,应该怎么去学习...

    点击蓝字"python教程"关注我们哟! 这篇文章主要给大家讲解学习Python技术应该如何学习才能达到企业要求 内容会涉及到Python的学习技巧以及系统的学习知识安排和学习方法 ...

  6. c语言程序的流程控制语句,三 C语言流程控制语句

    简介:流程控制语句 1.分支语句(条件语句) if/else(重点) switch/case 2.循环语句 for(重点) while do while 分支语句 1> if/else 按照一定 ...

  7. python线性结构图_Python学习线路图 -蓝鸥

    Python学习路线图 Python基础 适用/适合人群:适合小白,零基础 目标:掌握HTML CSS div+css,javascript,h5等前端基本技术 ●01开班典礼: 1.Pycharm安 ...

  8. 自学python困难吗_Python学习难不难?零基础好学吗?

    Python学习难不难?零基础好学吗?我想对于很多人来说,这都是非常关键的问题,也是很多人都在疑惑的问题.现在市场发展,行业的竞争压力是非常大的,转型的人也是非常多,对于不少人转型人才来说,Pytho ...

  9. python龟图_python学习turtle(龟图标状态)

    2019独角兽企业重金招聘Python工程师标准>>> 记录学习 turtle.hideturtle() turtle.ht(),隐藏龟图标. turtle.showturtle() ...

最新文章

  1. matlab canny边缘,matlab – 定向Canny边缘检测
  2. ASIHTTPRequest下载数据
  3. 自动化测试工具selenium python_Selenium自动化测试工具使用方法汇总
  4. matlab中二维插值函数interp2的使用
  5. Eclipse设置Courier New字体
  6. MySQL 体系结构
  7. 可视化利器 —— t-SNE(matlab toolbox 的使用与解释)
  8. 利用Runtime为Category添加属性
  9. ,PLCSIM、SIMIT、Amesim、NX MCD、 Process Simulate、Plant Simulation,一文带你了解西门子整个虚拟调试与仿真软硬件体系
  10. Mysql全国省区县地区码
  11. php阴阳万年历转换的接口,用php写的阴阳万年历
  12. 佰落暑期java自学记录-11
  13. Python---按字典序输出集合的所有非空子集
  14. Kali下卸载程序和安装程序的方法
  15. linux通过iphone usb上网,Ubuntu下iphone拖电脑上网
  16. Office2016官方下载 | Microsoft Office Professional Plus 2016完整版下载
  17. Unity基础知识汇总
  18. json大文件导入数据库
  19. 华为手机打印log日志
  20. 股价跌到“1美元“退市线之下,昔日巨头四季教育成沧海一粟?

热门文章

  1. 5月18发布会,这次TDSQL又有什么大动作?
  2. 【内核模块auth_rpcgss】netns引用计数泄露导致容器弹性网卡残留
  3. 防火墙技术指标---并发连接数/吞吐量
  4. 数据中台离数据资产“价值变现”还有多远?
  5. Hive _偏门常用查询函数(二)附带实例(列转行、窗口函数)
  6. leetcode 111. 二叉树的最小深度
  7. 牛客网_PAT乙级_1018人口普查(20)
  8. 网络协议之:socket协议详解之Socket和Stream Socket
  9. oracle自带split函数_Pandas 基本使用(三) — DataFrame.to_dict() 函数基本使用
  10. python2.7与python3的区别_Python 2.7 与Python3的区别