需求:在控制台连续输出五行*, 每一行星星的数量依次递增
思路:使用while循环输出五行内容, 依次输出数字1到5, 再使用数字乘以字符串'*', 即可在每行输出一个星星, 两个星星, ... 五个星星, 从而实现递增
i = 1 # 循环5次,打印五行 while i <= 5: # 打印* print('*' * i) # i递增 i += 1
字符串和整数相乘可以重复输出字符串,比如
print('*' * 1) 会输出 *
print('*' * 3) 会输出 ***
除了上面这个方法,我们还可以使用循环嵌套的方法来实现输出星星
print()函数输出一个内容后会默认换行,我们可以是end=''来取消默认换行, 格式如下
print('内容', end='')
# 定义行数 row = 1 # 循环5次,打印五行 while row <= 5: # 定义列数 col = 1 while col <= row: # 列每循环一次输出一个*,并取消换行 print('*', end='') # 列数递增 col += 1 # 行每循环一次,打印一个换行 print('') # 行数递增 row += 1
输出九九乘法表
循环的结构和上面相同,只需要修改每一列输出的内容即可
# 定义行数 row = 1 # 循环9次,打印9行 while row <= 9: # 定义列数 col = 1 while col <= row: # 列每循环一次,打印 row * col = (row * col), 并取消换行 print('%d * %d = %d ' % (row, col, row * col), end='') # 列数递增 col += 1 # 行每循环一次,打印一个换行 print('') # 行数递增 row += 1