while循环和if条件语句一样都可以嵌套使用,但是while循环的嵌套相对来讲难度更大。下面说一下while嵌套循环打印九九乘法表的例子。
如上图所示,九九乘法表有行有列,而且每一行、每一列的两个乘数之间是有一定规律的。合理地组织while循环和输出语句就能达到以上效果。代码如下:
row = 1 # 行数,九九乘法表有九行,因此row从1开始到9结束 while row <= 9: col = 1 #列数, while col <= row: # 第一行有一次输出,第二行有两次输出,....... col < row正好符合该条件 print("%d * %d = %d\t" % (col,row,row*col),end="") # print() 默认每次输出都会换行,是因为默认有一个换行符\n,使用end="",就可以不让他换行 col += 1 print() # 内层循环每循环一次都强制换行,开始下一行的输出 row += 1
重点:
1.两个while嵌套,若外层循环i次,内层循环j次,则内层代码块一共循环i*j次
2.以九九乘法表为例,外层循环表示行数,内层循环表示列数
3.print()行数默认换行,使用print("不换行" ,end="")可以抑制换行