内容正文:
任务3.2 循环语句
打印九九乘法表
同学们,这一节学习来学习for循环结构
1
3.2 循环语句——打印九九乘法表
【任务描述】
九九乘法表是一张很有规律的表,乘数、被乘数有序地增加。打印九九乘法表是学习for循环很好的案例。
从九九乘法表的列看,乘数在每列中是一致的,而被乘数依次从乘数增加到9;从九九乘法表的行来看,被乘数保持不变,乘数从1增加到被乘数,整体图形呈三角形形状。
素养小课堂:
九九乘法表是中国对世界贡献很大的发明。早在春秋战国时代,中国人发明了十进位制,之后还发明了九九表,又称九九歌、九因歌,是中国古代筹算中进行乘法、除法、开方等运算中的基本计算规则,沿用到今日,已有两千多年历史。
九九表后来向东传入高丽、日本,经过丝绸之路向西传到印度、波斯,继而在全世界流行。欧洲直到13世纪初才出现这种简单的乘法表。
3.2 循环语句——打印九九乘法表
3.2 循环语句——打印九九乘法表
【任务分析】
实现九九乘法表的打印,需要用到循环嵌套。乘法表是两个数的乘积表,一个数是i,它从1变化到9,控制外层循环,并在一个确定的i循环下进行j循环。为了不出现重复的i*j的值,j的值只从1变化到i。换行符用
表示,一次循环结束便换行。
3.2 循环语句——打印九九乘法表
3.2.1 while循环语句
3.2.2 for循环语句
3.2.3 循环嵌套
3.2.4 任务实现——打印九九乘法表
3.2.1 while循环语句
同学们,这一节学习来学习for循环结构
6
3.2.1 while循环语句
while <条件> :
<语句块 >
1.whie循环语句
while循环语句的基本语法格式为:
while循环语句由while关键字、条件表达式和冒号组成,控制其下缩进的语句块,在满足条件的情况下,循环执行该语句块。
while循环是由条件控制的循环运行方式,如果条件成立,那么下面的语句块就会被执行,执行之后 再次判断条件,如果条件还是成立,它还是会继续执行下面的语句块,然后再回来判断,所以while循环是反复执行语句块,直到条件不满足为至。下面我们来看个简单的例子。
7
3.2.1 while循环语句
i=1
while i<=5:
print("第",i,"遍 Python")
i+=1
print("循环已结束")
【例3-8】while循环语句的使用。
第 1 遍 Python
第 2 遍 Python
第 3 遍 Python
第 4 遍 Python
第 5 遍 Python
循环已结束
3.2.1 while循环语句
i=1
while True:
print("第",i,"遍Python")
i=i+1
print("循环已结束")
2.while无限循环
while循环语句的循环表达式一般是关系表达式或逻辑表达式,在表达式永远成立的情况下,会陷入无限循环,也叫死循环。
上述代码的循环表达式“i<5”永远成立,则会一直执行循环体,永远执行不到打印“循环已结束”的语句。
while循环是由条件控制的循环运行方式,如果条件成立,那么下面的语句块就会被执行,执行之后 再次判断条件,如果条件还是成立,它还是会继续执行下面的语句块,然后再回来判断,所以while循环是反复执行语句块,直到条件不满足为至。下面我们来看个简单的例子。
9
3.2.1 while循环语句
i=1
while True:
print("第",i,"遍 Python")
i+=1
if i >7:
break #跳出循环
print("打印结束")
在循环体内增加条件分支,当满足条件时使用break语句来跳出循环。
或者在无限循环中,可以按Ctrl+C组合键来中断循环。
第 1 遍 Python
第 2 遍 Python
第 3 遍 Python
第 4 遍 Python
第 5 遍 Python
第 6 遍 Python
第 7 遍 Python
打印结束
【例3-9】无限循环的控制。
while循环是由条件控制的循环运行方式,如果条件成立,那么下面的语句块就会被执行,执行之后 再次判断条件,如果条件还是成立,它还是会继续执行下面的语句块,然后再回来判断,所以while循环是反复执行语句块,直到条件不满足为至。下面我们来看个简单的例子。
10
3.2.1 while循环语句
边学边练:
用while循环语句实现以下功能:
(1)输入一个正整数n。
(2)输出1+2+3+...+n的值。
3.2.2 for循环语句
同学们,这一节学习来学习for循环结构
12
3.2.2 for循环语句
for 临时变量 in 可迭代对象:
语句块
for循环语句是已知重复执行次数的循环语句,通常称为计数循环,但不局限于计数循环,它可以遍历任何有序的序列对象元素,比如数组、列表、字符串等。
1.for循环语句的一般格式
for语句可遍历的可迭代对象包括:字符串、列表、元组、字典、集合
for循环也称为遍历循环,是由保留字for和 in构成的循环结构,它可以从遍历结构中逐一提取元素,放在循环变量中 ,它的方法很简单,所使用的遍历结构是一种能够包含多个元素的结构,所谓的遍历结构不是一种特殊的类型,它包含很多类型。每次循环的时候,它能够从遍历结构中提取其中的一个元素,放到循环变量里,去执行下面的语句块。执行之后呢再从遍历结构中提取下一个元素。当遍历结构中的所有元素都放入循环变量,并且都已经循环执行之后,循环退出。
13
3.2.2 for循环语句
for i in "China":
print(i)
C
h
i
n
a
【例3-10】字符串的for遍历。
while循环是由条件控制的循环运行方式,如果条件成立,那么下面的语句块就会被执行,执行之后 再次判断条件,如果条件还是成立,它还是会继续执行下面的语句块,然后再回来判断,所以while循环是反复执行语句块,直到条件不满足为至。下面我们来看个简单的例子。
14
3.2.2 for循环语句
for 临时变量 in 可迭代对象:
语句块
for循环语句是已知重复执行次数的循环语句,通常称为计数循环,但不局限于计数循环,它可以遍历任何有序的序列对象元素,比如数组、列表、字符串等。
1.for循环语句的一般格式
for语句可遍历的可迭代对象包括:字符串、列表、元组、字典、集合
for循环也称为遍历循环,是由保留字for和 in构成的循环结构,它可以从遍历结构中逐一提取元素,放在循环变量中 ,它的方法很简单,所使用的遍历结构是一种能够包含多个元素的结构,所谓的遍历结构不是一种特殊的类型,它包含很多类型。每次循环的时候,它能够从遍历结构中提取其中的一个元素,放到循环变量里,去执行下面的语句块。执行之后呢再从遍历结构中提取下一个元素。当遍历结构中的所有元素都放入循环变量,并且都已经循环执行之后,循环退出。
15
3.2.2 for循环语句
range(start, end, step)
2.range函数实现for循环
for循环可以和range函数搭配使用来遍历一个数字序列。range函数可以生成一个由整数组成的可迭代对象,其语法格式为:
上述语法会产生一个从start数开始,每增加一次step产生一个新数,直到end(不包括end)为止的序列。在不指定start的情况下从0开始。
for循环也称为遍历循环,是由保留字for和 in构成的循环结构,它可以从遍历结构中逐一提取元素,放在循环变量中 ,它的方法很简单,所使用的遍历结构是一种能够包含多个元素的结构,所谓的遍历结构不是一种特殊的类型,它包含很多类型。每次循环的时候,它能够从遍历结构中提取其中的一个元素,放到循环变量里,去执行下面的语句块。执行之后呢再从遍历结构中提取下一个元素。当遍历结构中的所有元素都放入循环变量,并且都已经循环执行之后,循环退出。
16
3.2.2 for循环语句
for i in range(5):
print("*"*(i+1))
*
**
***
****
*****
【例3-11】for循环中range函数的使用。
for循环遍历了0~4,当i为0时,输出的“*”为1(0+1)个,for循环执行一轮自动换行;当i为1时,输出的“*”为2(1+1)个,以此类推,直至i为4时结束。
while循环是由条件控制的循环运行方式,如果条件成立,那么下面的语句块就会被执行,执行之后 再次判断条件,如果条件还是成立,它还是会继续执行下面的语句块,然后再回来判断,所以while循环是反复执行语句块,直到条件不满足为至。下面我们来看个简单的例子。
17
3.2.2 for循环语句
边学边练:
用for循环实现以下功能:
(1)输入一个正整数n。
(2)输出1+2+3+...+n的值。
3.2.3 循环嵌套
同学们,这一节学习来学习for循环结构
19
3.2.3 循环嵌套
1.while循环嵌套
# while循环语句中嵌套while循环语句
while 循环条件1: # 外层循环
语句块1
while 循环条件2: # 内层循环
语句块2
# while循环语句中嵌套for循环语句
while 循环条件1: # 外层循环
语句块1
for 临时变量in 可迭代对象: # 内层循环
语句块2
以while循环语句中嵌套while循环语句的循环嵌套为例,如果外层的循环条件1为True,则执行语句块1,并对内层的循环条件2进行判断;如果循环条件2也为True,则执行语句块2,直到循环条件2为False为止;内层循环结束后继续判断外层的循环条件1,如此重复执行直到循环条件1为False时,结束外层循环。
for循环也称为遍历循环,是由保留字for和 in构成的循环结构,它可以从遍历结构中逐一提取元素,放在循环变量中 ,它的方法很简单,所使用的遍历结构是一种能够包含多个元素的结构,所谓的遍历结构不是一种特殊的类型,它包含很多类型。每次循环的时候,它能够从遍历结构中提取其中的一个元素,放到循环变量里,去执行下面的语句块。执行之后呢再从遍历结构中提取下一个元素。当遍历结构中的所有元素都放入循环变量,并且都已经循环执行之后,循环退出。
20
3.2.3 循环嵌套
i=1
while i<5:
j=0
while j<i:
print("*",end="")
j+=1
print()
i+=1
*
**
***
****
【例3-12】while循环嵌套。
while循环是由条件控制的循环运行方式,如果条件成立,那么下面的语句块就会被执行,执行之后 再次判断条件,如果条件还是成立,它还是会继续执行下面的语句块,然后再回来判断,所以while循环是反复执行语句块,直到条件不满足为至。下面我们来看个简单的例子。
21
3.2.3 循环嵌套
2.for循环嵌套
# for循环语句中嵌套for循环语句
for 临时变量1 in 可迭代对象1: # 外层循环
语句块1
for 临时变量2 in 可迭代对象2: # 内层循环
语句块2
# for循环语句中嵌套while循环语句
for 临时变量 in 可迭代对象: # 外层循环
语句块1
while 循环条件: # 内层循环
语句块2
以for循环语句中嵌套for循环语句的循环嵌套为例,程序首先访问外层循环中可迭代对象1的第一个元素,执行语句块1,访问内层循环中可迭代对象2的第一个元素,执行语句块2;然后访问内层循环中可迭代对象2的下一个元素,执行语句块2,如此重复执行,直到内层循环中可迭代对象2的所有元素都被访问完,结束内层循环;继续访问外层循环中可迭代对象1的下一个元素,所有外层循环中的元素都被访问完毕,结束外层循环。
for循环也称为遍历循环,是由保留字for和 in构成的循环结构,它可以从遍历结构中逐一提取元素,放在循环变量中 ,它的方法很简单,所使用的遍历结构是一种能够包含多个元素的结构,所谓的遍历结构不是一种特殊的类型,它包含很多类型。每次循环的时候,它能够从遍历结构中提取其中的一个元素,放到循环变量里,去执行下面的语句块。执行之后呢再从遍历结构中提取下一个元素。当遍历结构中的所有元素都放入循环变量,并且都已经循环执行之后,循环退出。
22
3.2.3 循环嵌套
for i in range(1,5):
for j in range(0,i):
print("*",end="")
print()
*
**
***
****
【例3-13】for循环嵌套。
while循环是由条件控制的循环运行方式,如果条件成立,那么下面的语句块就会被执行,执行之后 再次判断条件,如果条件还是成立,它还是会继续执行下面的语句块,然后再回来判断,所以while循环是反复执行语句块,直到条件不满足为至。下面我们来看个简单的例子。
23
3.2.4 任务实现——打印九九乘法表
同学们,这一节学习来学习for循环结构
24
3.2.4 任务实现——打印九九乘法表
【任务描述】
九九乘法表的行列均有规律可循,小T仔细研究了这些规律,发现乘数在每列中是一致的,而被乘数依次从乘数增加到9;被乘数在每行中保持不变,乘数从1增加到被乘数,整体图形呈三角形形状。
小T打算用for循环嵌套实现九九乘法表打打印。定义两个临时变量i、j,i从1增加到9,控制外层循环;在一个确定的i循环下进行j循环,但为了不出现重复的i*j的值,j的值只从1变化到i。
3.2.4 任务实现——打印九九乘法表
【任务分析】
(1)定义外层循环变量i,for循环从1到9,控制列。
(2)定义内层循环变量j,for循环从1到i,控制行。
(3)输出i*j。
(4)内层循环结束,用print()换行。
3.2.4 任务实现——打印九九乘法表
for i in range(1,10):
for j in range(1,i+1):
d = i * j
print('%d*%d=%2d'%(i,j,d),end = ' ' )
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
【例3-14】任务实现:打印九九乘法表。
while循环是由条件控制的循环运行方式,如果条件成立,那么下面的语句块就会被执行,执行之后 再次判断条件,如果条件还是成立,它还是会继续执行下面的语句块,然后再回来判断,所以while循环是反复执行语句块,直到条件不满足为至。下面我们来看个简单的例子。
27
$$