python循環語句


 
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(0103) : 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 執行 pass5 當前字母 : o
6 執行 pass7 當前字母 : 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])

 

 
       


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM