for循環
1.格式
for 變量 in 集合:
循環體
2.概述
當程序執行for循環,按順序從集合中獲取元素變量保存當前循環得到的值,再去執行循環體。當集合中數據都被取完,則此刻跳出循環。
實例:
1 list1 = [1, 2, 3, 4, 5] 2 for i in list1: 3 print(i)
執行結果:
1 2 3 4 5
range(start,stop,[step])
step默認為1,可以不寫步長
range(10) 相當於 構建0-9的集合,等同於(0,10)
range(0,10,2) 構建0-9的集合,步長為2
1 for i in range(5): 2 print(i)
執行結果:
0
1
2
3
4
案例:
1 # 計算1-100的累加值 2 sum1 = 0 3 for i in range(101): 4 sum1 += i 5 print(sum1) 6 7 # 取偶數 8 for i in range(1,101): 9 if not i % 2: 10 print(i)
3.關鍵字
1.pass(本身無實際意義)
作用:占位
2.break
作用:跳出循環體,不再執行后邊的代碼
注意:只能跳出當前循環體
實例:
1 for i in range(1, 10): 2 print(i) # 1 3 break # 跳出循環
當while和for循環中出現了break關鍵字,則不會執行所搭配的else語句。
3.continue
作用:跳過當前循環,繼續下次循環
注意:跳過的是當前循環
實例:
1 for i in range(1,10): 2 if i == 5: 3 continue 4 print(i,end='')
執行結果:
12346789
案例:
1 ''' 2 1234567891 3 1234567892 4 1234567893 5 1234567894 6 1234567895 7 ''' 8 9 for i in range(1, 6): 10 if i == 3: 11 continue 12 for j in range(1, 10): 13 if j == 5: 14 continue 15 print(j,end='') 16 print(i)
運行結果:
123467891 123467892 123467894 123467895
用while循環做三角形:
1 #第一種 2 i = 1 3 while i < 10: 4 j = 1 5 while j < i + 1: 6 print(j, end=' ') 7 j += 1 8 print() 9 i += 1
運行結果:
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 1 2 3 4 5 6 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 9
1 #第二種 2 i = 1 3 while i < 10: 4 k = 1 5 while k < 10 - i: 6 print(' ', end=' ') 7 k += 1 8 j = i 9 while j > 0: 10 print(j, end=' ') 11 j -= 1 12 print() 13 i += 1
運行結果:
1 2 1 3 2 1 4 3 2 1 5 4 3 2 1 6 5 4 3 2 1 7 6 5 4 3 2 1 8 7 6 5 4 3 2 1 9 8 7 6 5 4 3 2 1
1 # 第三種 2 i = 9 3 while i > 0: 4 j = 1 5 while j < i + 1: 6 print(j, end=' ') 7 j += 1 8 print() 9 i -= 1
運行結果:
1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 1 2 3 4 5 1 2 3 4 1 2 3 1 2 1
1 # 第四種 2 i = 9 3 while i > 0: 4 k = 1 5 while k <= 9 - i: 6 print(' ', end=' ') 7 k += 1 8 j = i 9 while j > 0: 10 print(j, end=' ') 11 j -= 1 12 print() 13 i -= 1
運行結果:
9 8 7 6 5 4 3 2 1 8 7 6 5 4 3 2 1 7 6 5 4 3 2 1 6 5 4 3 2 1 5 4 3 2 1 4 3 2 1 3 2 1 2 1 1
用for循環做三角形
1 # 第一種 2 for i in range(1, 10): 3 for j in range(1, i + 1): 4 print(j, end=' ') 5 print()
運行結果:
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 1 2 3 4 5 6 1 2 3 4 5 6 7 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8 9
1 # 第二種 2 for i in range(9, 0, -1): 3 for j in range(1, i + 1): 4 print(j, end=' ') 5 print()
運行結果:
1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 1 2 3 4 5 6 1 2 3 4 5 1 2 3 4 1 2 3 1 2 1
1 # 第三種 2 for i in range(9, 0, -1): 3 for k in range(0, 9 - i): 4 print(' ', end=' ') 5 for j in range(i, 0, -1): 6 print(j, end=' ') 7 8 print()
運行結果:
9 8 7 6 5 4 3 2 1 8 7 6 5 4 3 2 1 7 6 5 4 3 2 1 6 5 4 3 2 1 5 4 3 2 1 4 3 2 1 3 2 1 2 1 1
#第四種 for i in range(1, 10): for k in range(0, 9 - i): print(' ', end=' ') for j in range(i, 0, -1): print(j, end=' ') print()
運行結果:
1 2 1 3 2 1 4 3 2 1 5 4 3 2 1 6 5 4 3 2 1 7 6 5 4 3 2 1 8 7 6 5 4 3 2 1 9 8 7 6 5 4 3 2 1