這里一共有3個while循環嵌套例題,前面2個例題是為第3個九九乘法表做鋪墊的,因為九九乘法表要注意的細節有很多,最終要做出一個九九乘法表。如果想要練習更多的Python練習題可以去Python自學網里去,里面有很多練習題,學習編程還是要多敲代碼多練習自己的流程思維。
實例一:打印星號(矩形狀)
1.1需求: 最終效果如圖
圖片1.png
1.2代碼:
分析: 一行輸出5個星號,重復打印5行即可。
"""
1. 打印1個星星
2. 一行5個星星:循環----5個星星在一行顯示
3. 打印5行星星:循環----一行5個,共5行
"""
j = 0
while j < 5:
# 一行星星開始
i = 0
while i < 5:
print('*', end='') # 如果不修改end結束符的換行那么是一行一個星星,把默認換行轉義字符刪除修改后就是一行5個星星,符合要求
i += 1
# 一行星星結束,換行顯示下一行
print() # 利用print默認自帶換行結束符,這里弄一個空的print,否則會所有星星是一行
j += 1
返回結果如下圖:
圖片2.png
實例二:打印星星(三角形狀)
2.1 需求:如下圖
圖片3.png
2.2 代碼
分析:一行輸出星星的個數和行數是相等的,每行:重復打印行號數字個星號,將打印行星號的命令重復執行5次實現打印5行
# 三角形:每行星星的個數和行號數相等
j = 0
while j < 5:
# 一行星星開始
i = 0
# i表示每行里面星星的個數,這個數字要和行號相等,所以i要和j有聯動關系
while i <= j:
print('*', end='') # 如果不修改end結束符的換行那么是一行一個星星,把默認換行轉義字符刪除修改后就是一行5個星星,符合要求
i += 1
# 一行星星結束,換行顯示下一行
print() # 利用print默認自帶換行結束符,這里弄一個空的換行,否則會所有星星是一行
j += 1
返回結果如下圖:
圖片4.png
實例三、九九乘法表
3.1 需求:如下圖的執行結果
圖片5.png
3.2 代碼
# 多行多個乘法表達式 x * x = x*x
"""
1. 打印一個乘法表達式:x * x = x*x
2. 一行打印多個表達式----一行表達式的個數和行號數相等----循環:一個表達式---不換行
3. 打印多行表達式----循環: 一行表達式---換行
注意: 一行表達式的個數和行號數相等
"""
j = 1
while j <= 9:
i = 1 # 九九乘法表的開始數字是1,所以這里取數字1
while i <= j: # 重點:i列和j行要有一個聯動關系
print(f'{i} * {j} = {i * j}', end='\t') # 利用制表符轉義字符\t來實現乘法表對齊的格式
i += 1 # 每次循環自增1
# 一行的表達式結束
print() #利用print實現空的換行
j += 1 # 每次循環自增1
返回結果如下圖:
圖片6.png