我们先由小星星的例子引入:
#在控制台连续输出5行号,每一行 小星星个数次递增
我们发现第一行有一个*,第二行有**,那么行数为几,该行就有几个小星星
友情提示:row代表行 col代表列
方法一:
直接用乘法,每次输出小星星乘以当前行数得出了正确的结果。
row=1
while row <=5:
print("*"*row)
row +=1
输出结果为:
*
**
***
****
*****
.
说第二种方法之前,我们先进行一个扩展
扩展:一般来说print()函数输出内容之后,会自动在末尾换行。如果不希望换行的话,要在print()函数输出内容之后,增加,end=""
print("*")
print("*",end="+++")
print("*")
输出:
*
*+++*
.
方法二:
这是一个while循环的嵌套,和if循环嵌套的缩进类似。我们写嵌套代码的时候,要一层一层写。
row=1
while row <=9:
col=1
while col <=row:
print("*",end="")
col +=1
print("")
row +=1
输出:
*
**
***
****
*****
******
*******
********
*********
九九乘法表
我们发现九九乘法表有一个规律:每一个都是 其所在的列数和其所n在的行数的乘积
根据上边小星星的启发
row=1
while row <=9:
col=1
while col <=row:
print("9 * %d = 81" % row,end=" ")
col +=1
print("")
row +=1
输出:
9 * 1 = 81
9 * 2 = 81 9 * 2 = 81
9 * 3 = 81 9 * 3 = 81 9 * 3 = 81
9 * 4 = 81 9 * 4 = 81 9 * 4 = 81 9 * 4 = 81
9 * 5 = 81 9 * 5 = 81 9 * 5 = 81 9 * 5 = 81 9 * 5 = 81
9 * 6 = 81 9 * 6 = 81 9 * 6 = 81 9 * 6 = 81 9 * 6 = 81 9 * 6 = 81
9 * 7 = 81 9 * 7 = 81 9 * 7 = 81 9 * 7 = 81 9 * 7 = 81 9 * 7 = 81 9 * 7 = 81
9 * 8 = 81 9 * 8 = 81 9 * 8 = 81 9 * 8 = 81 9 * 8 = 81 9 * 8 = 81 9 * 8 = 81 9 * 8 = 81
9 * 9 = 81 9 * 9 = 81 9 * 9 = 81 9 * 9 = 81 9 * 9 = 81 9 * 9 = 81 9 * 9 = 81 9 * 9 = 81 9 * 9 = 81
row=1
while row <=9:
col=1
while col <=row:
print("%d * %d = 81" % ( col,row),end=" ")
col +=1
print("")
row +=1
输出:
1 * 1 = 81
1 * 2 = 81 2 * 2 = 81
1 * 3 = 81 2 * 3 = 81 3 * 3 = 81
1 * 4 = 81 2 * 4 = 81 3 * 4 = 81 4 * 4 = 81
1 * 5 = 81 2 * 5 = 81 3 * 5 = 81 4 * 5 = 81 5 * 5 = 81
1 * 6 = 81 2 * 6 = 81 3 * 6 = 81 4 * 6 = 81 5 * 6 = 81 6 * 6 = 81
1 * 7 = 81 2 * 7 = 81 3 * 7 = 81 4 * 7 = 81 5 * 7 = 81 6 * 7 = 81 7 * 7 = 81
1 * 8 = 81 2 * 8 = 81 3 * 8 = 81 4 * 8 = 81 5 * 8 = 81 6 * 8 = 81 7 * 8 = 81 8 * 8 = 81
1 * 9 = 81 2 * 9 = 81 3 * 9 = 81 4 * 9 = 81 5 * 9 = 81 6 * 9 = 81 7 * 9 = 81 8 * 9 = 81 9 * 9 = 81
row=1
while row <=9:
col=1
while col <=row:
print("%d * %d = %d" % ( col,row,col*row),end=" ")
col +=1
print("")
row +=1
输出:
1 * 1 = 1
1 * 2 = 2 2 * 2 = 4
1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
1 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16
1 * 5 = 5 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20 5 * 5 = 25
1 * 6 = 6 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24 5 * 6 = 30 6 * 6 = 36
1 * 7 = 7 2 * 7 = 14 3 * 7 = 21 4 * 7 = 28 5 * 7 = 35 6 * 7 = 42 7 * 7 = 49
1 * 8 = 8 2 * 8 = 16 3 * 8 = 24 4 * 8 = 32 5 * 8 = 40 6 * 8 = 48 7 * 8 = 56 8 * 8 = 64
1 * 9 = 9 2 * 9 = 18 3 * 9 = 27 4 * 9 = 36 5 * 9 = 45 6 * 9 = 54 7 * 9 = 63 8 * 9 = 72 9 * 9 = 81
但是这个九九乘法表有个别不对齐,我们就要引入一个制表符
#\t 在控制台输出一个制表符,协助在输出文本时,垂直方向保持对齐
print("1 2 3")
print("10 20 30")
输出:
1 2 3
10 20 30
加上横向制表符\t
print("1\t2 \t3")
print("10\t20\t30")
输出:
1 2 3
10 20 30
row=1
while row <=9:
col=1
while col <=row:
print("%d * %d = %d" % ( col,row,col*row),end="\t ")
col +=1
print("")
row +=1
输出结果为:
1 * 1 = 1
1 * 2 = 2 2 * 2 = 4
1 * 3 = 3 2 * 3 = 6 3 * 3 = 9
1 * 4 = 4 2 * 4 = 8 3 * 4 = 12 4 * 4 = 16
1 * 5 = 5 2 * 5 = 10 3 * 5 = 15 4 * 5 = 20 5 * 5 = 25
1 * 6 = 6 2 * 6 = 12 3 * 6 = 18 4 * 6 = 24 5 * 6 = 30 6 * 6 = 36
1 * 7 = 7 2 * 7 = 14 3 * 7 = 21 4 * 7 = 28 5 * 7 = 35 6 * 7 = 42 7 * 7 = 49
1 * 8 = 8 2 * 8 = 16 3 * 8 = 24 4 * 8 = 32 5 * 8 = 40 6 * 8 = 48 7 * 8 = 56 8 * 8 = 64
1 * 9 = 9 2 * 9 = 18 3 * 9 = 27 4 * 9 = 36 5 * 9 = 45 6 * 9 = 54 7 * 9 = 63 8 * 9 = 72 9 * 9 = 81