python之控制流
阿新 • • 發佈:2018-11-26
控制流分為順序,分支,迴圈。
1. 順序結構
我們平時寫的從上到下就是順序結構,這個最常見。
2. 分支結構
1. if
當if後的條件為真時,執行if語句
2. if ... else
當if的條件不為真時,執行else語句
3.if... elif...elif..else
if語句為真,執行if語句,之後的語句不執行。if語句不為真,看elif語句是否為真,為真執行;不為真看下一個elif。都不為真執行else語句。
1 #!/usr/bin/python3 2 # -*- coding: utf-8 -*- 3 # @Time :2018/11/26 13:584 # @Author :yosef 5 # @Email :[email protected] 6 # @File: :class7.py 7 # @Software :PyCharm Community Edition 8 number = 23 9 guees = int(input("請輸入一個整數:")) 10 if number == guees: 11 print("恭喜你猜對啦") 12 elif number > guees: 13 print("抱歉,猜小了") 14 else: 15 print("抱歉,猜大了")
3. 迴圈結構
迴圈條件為真時,會執行迴圈條件下的語句。否則結束迴圈
1. for迴圈
for迴圈可以用來遍歷字串,元組,列表,字典的key,value。
1 #!/usr/bin/python3 2 # -*- coding: utf-8 -*- 3 # @Time :2018/11/26 14:11 4 # @Author :yosef 5 # @Email :[email protected] 6 # @File: :class8.py 7 # @Software :PyCharm Community Edition8 str1 = "python is the best" 9 list1 = [1, 1.36, 'a', 'python', (1,), [1, 2], {'age': 18}] 10 tuple1 = (1, 1.36, 'a', 'python', (1,), [1, 2], {'age': 18}) 11 dict1 = {"Name": "yosef", 12 "Sex": "man", 13 "Age": 22, 14 "City": "Shanghai"} 15 for a in str1: 16 print(a, end=" ") 17 print("\n") 18 for b in list1: 19 print(b, end=" ") 20 print("\n") 21 for c in tuple1: 22 print(c, end=" ") 23 print("\n") 24 for d in dict1.values(): 25 print(d, end=" ") 26 print("\n") 27 for e in dict1.keys(): 28 print(e, end=" ") 29 print("\n")
執行結果:
range函式:
range函式的結果是序列
range(m,n,k) 在[m,n)中,步長為k的整數序列
range(m,n) 在[m,n)中,步長為1的整數序列
range(m) 在[0,m)中,步長為1的整數序列
1 #!/usr/bin/python3 2 # -*- coding: utf-8 -*- 3 # @Time :2018/11/26 14:48 4 # @Author :yosef 5 # @Email :[email protected] 6 # @File: :class9.py 7 # @Software :PyCharm Community Edition 8 for a in range(2, 8, 2): 9 print(a, end=" ") 10 print("\n") 11 for i in range(1,9): 12 print(i, end=" ") 13 print("\n") 14 for j in range(10): 15 print(j, end=" ")
結果:
for + range
1 list1 = [1, 1.36, 'a', 'python', (1,), [1, 2], {'age': 18}] 2 for item in range(len(list1)): 3 print(list1[item], end=" ")
結果:
巢狀for迴圈
1 list1 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] 2 for i in range(len(list1)): 3 for j in range(len(list1[i])): 4 print(list1[i][j], end=" ")
2. while迴圈
while迴圈當條件為真時,會執行程式碼,為假時退出程式碼迴圈。
3. while迴圈結合continue,break
break可以打破迴圈。常用於迴圈語句,強制迴圈停止,然後退出迴圈。
continue強制停止迴圈中此次執行,跳到下一次執行。
1 #!/usr/bin/python3 2 # -*- coding: utf-8 -*- 3 # @Time :2018/11/26 15:20 4 # @Author :yosef 5 # @Email :[email protected] 6 # @File: :class11.py 7 # @Software :PyCharm Community Edition 8 number = 56 9 while True: 10 guees = int(input("請輸入一個整數:")) 11 if number == guees: 12 print("恭喜你猜對啦") 13 break 14 elif number > guees: 15 print("抱歉,猜小了") 16 continue 17 else: 18 print("抱歉,猜大了") 19 continue
break就是直接跳出該層迴圈
continue就是直接進入該層迴圈的下一次迭代.