1. 程式人生 > >python之控制流

python之控制流

 

控制流分為順序,分支,迴圈。

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:58
4 # @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 Edition
8 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就是直接進入該層迴圈的下一次迭代.