Python_從零開始學習_(18) 迴圈巢狀
阿新 • • 發佈:2018-12-12
1. 迴圈巢狀
- while 巢狀就是: while 裡面還有 while
while 條件1:
條件滿足時, 做得事情1
條件滿足時, 做得事情2
條件滿足時, 做得事情3
......
while 條件2:
條件滿足時, 做得事情1
條件滿足時, 做得事情2
條件滿足時, 做得事情3
......
處理條件2
處理條件1
2. 迴圈巢狀演練 ---- 九九乘法表
第 1 步 : 用巢狀列印小星星
需求
- 在控制檯連續輸出五行 * , 每一行星號的數量依次遞增
# 在控制檯連續輸出五行 * , 每一行星號的數量依次遞增
# *
# **
# ***
# ****
# *****
# 程式碼實現
num = 1
while num <= 5:
print("*" * num)
num +=1
第 2 步 : 使用迴圈巢狀列印小星星
知識點 對 print 函式的使用做一個贈強
- 在預設情況下, print 函式輸出內容之後, 會自動在內容末尾增加換行
- 如果不希望末尾增加換行, 可以在 print 函式輸出內容的後面增加 , end = ""
- 其中 "" 中間可以指定 print 函式輸出內容輸出內容之後, 繼續希望顯示的內容
- 語法格式如下:
# 向控制檯輸出內容結束之後, 不會換行
print("*", end="")
# 單純的換行
print("")
end="" 表示向控制檯輸出內容結束之後, 不會換行
巢狀迴圈小星星演練 :
# 定義行變數 row = 1 while row <= 5: # 1. 定義一個列計數器變數 col = 1 # 2. 開始迴圈 while col <= row: # print("%d" % row) # 每一行列印多少個小星星 print("*", end="") col += 1 # print("第 %d 行" % row) # 這行程式碼就是在一行星星輸出完之後, 新增換行 ! print("") row += 1
第 3 部 : 九九乘法表
需求 輸出 九九乘法表 格式如下 :
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
演練程式碼 :
# 定義一個行變數
row = 1
# 第一個迴圈, 迴圈次數代表多少行數
while row <= 9:
# 定義一個列變數
col = 1
# 第二個迴圈, 代表每一行迴圈出來的內容
while col <= row:
print("%d * %d = %d" % (col, row, row*col), end=" ")
col += 1
print("")
row += 1
但是發現打印出來沒對齊:
然後就有了轉義字元
- \t 在控制檯輸出一個 製表符, 協助在輸出文字時 垂直方向 保持對其
- \n 在控制檯輸出一個 換行符
製表符 的功能是在不適用表格的情況下在 垂直方向 按列對齊文字
轉義字元 | 描述 |
---|---|
\\ | 反斜槓符號 |
\' | 單引號 |
\" | 雙引號 |
\n | 換行 |
\t | 橫向製表符 |
\r | 回車 |
然後修改後的九九乘法程式碼如下 :
# 定義一個行變數
row = 1
# 第一個迴圈, 迴圈次數代表多少行數
while row <= 9:
# 定義一個列變數
col = 1
# 第二個迴圈, 代表每一行迴圈出來的內容
while col <= row:
print("%d * %d = %d" % (col, row, row*col), end="\t")
col += 1
print("")
row += 1