1 n = 100 2 sum = 0 3 counter = 1 4 while counter <= n: 5 sum = sum + counter 6 counter += 1 7 8 print("1 到 %d 之和為: %d" % (n, sum))
我們可以通過設置條件表達式永遠不為 false 來實現無限循環,實例如下:
1 var = 1 2 while var == 1: # 表達式永遠為 true 3 num = int(input("輸入一個數字 :")) 4 print("你輸入的數字是: ", num) 5 6 print("Good bye!")
1 count = 0 2 while count < 5: 3 print(count, " 小於 5") 4 count = count + 1 5 else: 6 print(count, " 大於或等於 5")
1 sites = ["Baidu", "Google", "Runoob", "Taobao"] 2 for site in sites: 3 if site == "Runoob": 4 print("Runoob!") 5 break 6 print("循環數據 " + site) 7 else: 8 print("沒有循環數據!") 9 print("完成循環!")
>>>for i in range(5,9) : print(i) 5678
>>>for i in range(0, 10, 3) : print(i) 0369
>>>for i in range(-10, -100, -30) : print(i) -10-40-70
1 a = ['Google', 'Baidu', 'Runoob', 'Taobao', 'QQ'] 2 for i in range(len(a)): 3 print(i, a[i])
0 Google
1 Baidu
2 Runoob
3 Taobao
4 QQ
1 for letter in 'Runoob': # 第一個實例 2 if letter == 'b': 3 break 4 print('當前字母為 :', letter) 5 6 var = 10 # 第二個實例 7 while var > 0: 8 print('當期變量值為 :', var) 9 var = var - 1 10 if var == 5: 11 break 12 13 print("Good bye!")
D:\pyplace\venv\Scripts\python.exe D:/pyplace/Test4.py 當前字母為 : R 當前字母為 : u 當前字母為 : n 當前字母為 : o 當前字母為 : o 當期變量值為 : 10 當期變量值為 : 9 當期變量值為 : 8 當期變量值為 : 7 當期變量值為 : 6 Good bye! Process finished with exit code 0
continue語句被用來告訴Python跳過當前循環塊中的剩余語句,然后繼續進行下一輪循環。
1 for letter in 'Runoob': # 第一個實例 2 if letter == 'o': # 字母為 o 時跳過輸出 3 continue 4 print('當前字母 :', letter) 5 6 var = 10 # 第二個實例 7 while var > 0: 8 var = var - 1 9 if var == 5: # 變量為 5 時跳過輸出 10 continue 11 print('當前變量值 :', var) 12 print("Good bye!")
D:\pyplace\venv\Scripts\python.exe D:/pyplace/Test4.py 當前字母 : R 當前字母 : u 當前字母 : n 當前字母 : b 當前變量值 : 9 當前變量值 : 8 當前變量值 : 7 當前變量值 : 6 當前變量值 : 4 當前變量值 : 3 當前變量值 : 2 當前變量值 : 1 當前變量值 : 0 Good bye! Process finished with exit code 0
1 for n in range(2, 10): 2 for x in range(2, n): 3 if n % x == 0: 4 print(n, '等於', x, '*', n//x) 5 break 6 else: 7 # 循環中沒有找到元素 8 print(n, ' 是質數')
1 2 是質數 2 3 是質數 3 4 等於 2 * 2 4 5 是質數 5 6 等於 2 * 3 6 7 是質數 7 8 等於 2 * 4 8 9 等於 3 * 3
Python pass是空語句,是為了保持程序結構的完整性。
pass 不做任何事情,一般用做占位語句,如下實例
1 for letter in 'Runoob': 2 if letter == 'o': 3 pass 4 print('執行 pass 塊') 5 print('當前字母 :', letter) 6 7 print("Good bye!")
1 當前字母 : R 2 當前字母 : u 3 當前字母 : n 4 執行 pass 塊 5 當前字母 : o 6 執行 pass 塊 7 當前字母 : o 8 當前字母 : b 9 Good bye!
使用循環嵌套來實現99乘法法則:
1 i = 1 2 while i <= 9: 3 j = 1 4 while j <= i: 5 mut = j * i 6 print("%d*%d=%d" % (j, i, mut), end=" ") 7 j += 1 8 print("") 9 i += 1
十進制轉化
while True: number = input('請輸入一個整數(輸入Q退出程序):') if number in ['q', 'Q']: break elif not number.isdigit(): print('您的輸入有誤!只能輸入整數(輸入Q退出程序)!請重新輸入') continue else: number = int(number) print('十進制 --> 十六進制 :%d -> 0x%x' % (number, number)) print('十進制 --> 八進制 :%d -> 0o%o' % (number, number)) print('十進制 --> 二進制 :%d ->' % number, bin(number))
1 D:\pyplace\venv\Scripts\python.exe D:/pyplace/Test4.py 2 請輸入一個整數(輸入Q退出程序):ds 3 您的輸入有誤!只能輸入整數(輸入Q退出程序)!請重新輸入 4 請輸入一個整數(輸入Q退出程序):34 5 十進制 --> 十六進制 :34 -> 0x22 6 十進制 --> 八進制 :34 -> 0o42 7 十進制 --> 二進制 :34 -> 0b100010 8 請輸入一個整數(輸入Q退出程序):
冒泡排序很經典的排序方式,從數組中的第0個元素開始,與后面一個元素進行比較,如果前面的元素大於后面的元素,就調換位置,循環到最后(即:a0與a1比較得到結果后,a1與a2比較...),最大的元素被換到數組最末尾,剔除掉最后一個元素,在余下的數組元素中進行上述操作,到最后,整個數組呈現從小到大的排序
1 def order(li): 2 print(len(li)) 3 max = 0 4 for ad in range(len(li) - 1): 5 for x in range(len(li) - 1 - ad): 6 if li[x] > li[x + 1]: 7 max = li[x] 8 li[x] = li[x + 1] 9 li[x + 1] = max 10 else: 11 max = li[x + 1] 12 print(li) 13 14 15 order([41, 23344, 9353, 5554, 44, 7557, 6434, 500, 2000])