Python3条件控制、循环语句

文章目录

  • if语句

    • while循环
  • 无限循环 * while循环使用else语句 * 简单语句组

    • for语句
  • for语句中使用break * rang()函数

    • break和continue语句及循环中的else子句
  • break * continue * 查询质数(else应用) * pass语句

    • for与while练习
  • 打印1-9三角形阵列 * 99乘法口诀表 * 最大公约数最小公倍数

if语句

Python中用elif代替了else if,所以if语句的关键字为:if-elif-else

注意:

  • 每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
  • 使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
  • 在Python中没有switch – case语句。

一般形式:

1if condition_1: 2 statement_block_1 3elif condition_2: 4 statement_block_2 5else: 6 statement_block_3 7 8

实例演示:

1age=19 2tall=186 3if age <= 0: 4 print("你还没出生呢!") 5elif age < 18: 6 print("你还是个未成年!") 7elif age: 8 print("你已经成年了!") 9if tall < 170: 10 print("你缺乏营养!") 11elif tall: 12 print("你营养不错!") 13 14

在这里插入图片描述
if嵌套演示:

1#五级制成绩 2num=int(input("请输入一个成绩:")) 3if num >=90: 4 print('A') 5else: 6 if num >= 80: 7 print('B') 8 else: 9 if num >= 70: 10 print('C') 11 else: 12 if num >=60: 13 print('D') 14 else: 15 print('E') 16 17

在这里插入图片描述

while循环

在Python中,没有do…while循环

1while 判断条件(condition)2 执行语句(statements)…… 3 4
1a=1 2while a<10: 3 print(a) 4 a=a+2 5 6

在这里插入图片描述

无限循环

使用Ctrl+c退出循环
无限循环在服务器上客户端的实时请求非常有用。

1a=1 2while a==1: 3 num=int(input("请输入一个数字:")) 4 print("你输入的数字是:",num) 5 6 7

在这里插入图片描述

while循环使用else语句

在 while … else 在条件语句为 false 时执行 else 的语句块。

1a=5 2while a <16: 3 print(a,"小于16") 4 a=a+4 5else: 6 print(a,"大于或等于16") 7 8

在这里插入图片描述

简单语句组

类似if语句的语法,如果你的while循环体中只有一条语句,你可以 将该语句与while写在同一行中

1while(1):print("停不下来!快按ctrl+c") 2print("Goodbye") 3 4

for语句

Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
一般格式如下:

1for <variable> in <sequence>: 2 <statements> 3else: 4 <statements> 5 6
1languages=["C","C++","Python","Perl"] 2for x in languages: 3 print(x) 4 5

在这里插入图片描述

for语句中使用break

1languages=["C","C++","Python","Perl"] 2for x in languages: 3 if x == "Python": 4 print("Python!") 5 break 6 print("循环数据", x) 7else: 8 print("没有循环数据") 9print("循环结束!") 10 11

在这里插入图片描述

rang()函数

  • 如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列

1for i in range(6): 2 print(i) 3 4 5

在这里插入图片描述

  • 也可以使用range指定区间的值

1for i in range(5,9): 2 print(i) 3 4

在这里插入图片描述

  • 可以使range以指定数字开始并指定不同的增量(甚至可以是负数,有时这也叫做’步长’)

1for i in range(0,10,3): 2 print(i) 3 4 5

在这里插入图片描述
负数

1for i in range(-1,-12,-3): 2 print(i) 3 4 5

在这里插入图片描述

  • 结合rang()和len()函数以遍历一个序列的索引

1a=['Google', 'Baidu', 'Runoob', 'Taobao', 'QQ'] 2for i in range(len(a)): 3 print(i,a[i]) 4 5

在这里插入图片描述

  • 还可以使用range()函数来创建一个列表

1a=list(range(10)) 2print(a) 3 4

在这里插入图片描述

break和continue语句及循环中的else子句

  • break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。
  • continue 语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。

break

实例演示:
while中使用break:

1m=5 2while m> 0: 3 m=m-1 4 if m == 2: 5 break 6 print(m) 7print("循环结束") 8 9 10

在这里插入图片描述

continue

while中使用continue:

1m=5 2while m> 0: 3 m=m-1 4 if m == 3: 5 continue 6 print(m) 7print("循环结束") 8 9 10

在这里插入图片描述

查询质数(else应用)

在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。

1for n in range(2,20): 2 for x in range(2,n): 3 if n % x == 0: 4 print(n,'等于',x,'*',n//x) 5 break 6 else: 7 print(n,"是质数") 8 9

在这里插入图片描述

pass语句

Python pass是空语句,是为了保持程序结构的完整性。
pass 不做任何事情,一般用做占位语句,如下实例:

1for x in "Kobe bryant": 2 if x =='o': 3 pass 4 print("pass块") 5 print(x) 6print("forever") 7 8 9

在这里插入图片描述

for与while练习

打印1-9三角形阵列

1for i in range(1,11): 2 for k in range(1,i): 3 print(k,end=" ") 4 print("\n") 5 6

在这里插入图片描述

99乘法口诀表

1i=1 2while i <= 9:#外循环控制行数 3 j=1 4 while j<=i:#内循环控制列数 5 s=i*j 6 print("%dx%d=%d"%(i,j,s),end=" ") 7 j=j+1 8 print("")#换行 9 i=i+1 10 11

在这里插入图片描述

最大公约数最小公倍数

1m=int(input("第一个数:")) 2n=int(input("第二个数:")) 3min=min(m,n) 4for i in range(1,min+1): 5 if(m % i == 0 and n % i == 0): 6 r=i 7 k=int((m*n)/r) 8print("最大公约数:",r) 9print("最小公倍数:",k) 10 11

在这里插入图片描述

代码交流 2021