Python流程控制與循環

1、if...else分支函數

一、什麼是if判斷spa

  判斷一個條件若是成立則如何,不成立則如何3d

二、爲什麼要有if判斷code

  讓計算機能像人同樣具備判斷能力對象

語法1:if...elseblog

1 if 判斷條件: 2   代碼塊1 3 else: 4   代碼塊2

語法2:if嵌套索引

1 if 條件1: 2     if 條件2: 3  代碼塊1 4     代碼塊2

語法3:if...elif...else字符串

1 if 條件1: 2  代碼塊1 3 elif 條件2: 4  代碼塊2 5 else: 6     代碼塊3

2、while 循環input

一、什麼是循環for循環

  循環指的是一個重複作某件事的過程

二、爲何要有循環

  爲了讓計算機可以像人同樣重複作某件事

while 循環又叫條件循環,循環的次數取決於條件

語法:

1 while 判斷條件: 2     代碼塊

上面這個循環是一個死循環,由於條件永遠成立,會不停的執行下去,要想結束while循環,有兩種方式:

方式一:操做 while 循環的條件讓其結束即設置一個標誌位讓其爲 True,一旦想終止循環,讓標誌位爲 False,等到下一次循環判斷標誌位不成立,就會結束循環

方式二:break 強行終止本層循環

例如:用戶登陸程序,登陸失敗超過三次則退出

方式一:

 1 print("start...")  2 count = 0  3 
 4 while count < 3:  5     username = input("Please input your username: ")  6     password = input("Please input your password: ")  7     if username == 'qiuxi' and username == '123':  8         print('登陸成功')  9         break
10     else: 11         print('登陸失敗, 請從新登陸') 12         count += 1
13         
14 print('end....')
運行結果:

start...
Please input your username: dsa
Please input your password: dsa
登陸失敗, 請從新登陸
Please input your username: ei
Please input your password: qi
登陸失敗, 請從新登陸
Please input your username: dsa
Please input your password: d
登陸失敗, 請從新登陸
end....

方式二:

 1 print("start...")  2 count = 0  3 
 4 while True:  5     if count == 3:  6         print("輸入錯誤過多")  7         break
 8     username = input("Please input your username: ")  9     password = input("Please input your password: ") 10     if username == 'qiuxi' and password == '123': 11         print('登陸成功') 12         break
13     else: 14         print('登陸失敗, 請從新登陸') 15         count += 1
16 
17 print('end....')
運行結果: start... Please input your username: xi Please input your password: 534 登陸失敗, 請從新登陸 Please input your username: ha Please input your password: ha 登陸失敗, 請從新登陸 Please input your username: ca Please input your password: dsa 登陸失敗, 請從新登陸 輸入錯誤過多 end....

continue:表示結束本次循環,進入下一次循環

1 # 打印1 2 3 5
2 count = 1
3 while count < 6: 4     if count == 4: 5         count += 1
6         continue
7     print(count, end=' ')    # end=' '表示使print不換行打印
8     count += 1

注意:continue的位置,不能將它做爲循環體最後一步執行的代碼,不然continue不會起到做業

1 while True: 2     print('11111') 3     print('22222') 4     print('33333') 5     continue  # continue不起做用

while - else的應用:當while循環正常執行完畢,不被break打斷的狀況下,會執行else語句的內容

 1 print("start...")  2 count = 0  3 while count < 3:  4     username = input("Please input your username: ")  5     password = input("Please input your password: ")  6     if username == 'qiuxi' and username == '123':  7         print('登陸成功')  8         break
 9     else: 10         print('登陸失敗, 請從新登陸') 11         count += 1
12 else: 13     print("輸錯的次數過多") 14 
15 print('end....')
運行結果: start... Please input your username: qi Please input your password: 43 登陸失敗, 請從新登陸 Please input your username: ad Please input your password: jhg 登陸失敗, 請從新登陸 Please input your username: cs Please input your password: 765 登陸失敗, 請從新登陸 輸錯的次數過多 end....

while循環嵌套

 1 name_of_db = 'qiuxi'
 2 pwd_of_db = '123'
 3 print("start...")  4 count = 0  5 while count < 3:  6     username = input("Please input your username: ")  7     password = input("Please input your password: ")  8     if username == name_of_db and password == pwd_of_db:  9         print('登陸成功') 10         while True: 11             print('''
12  1 瀏覽商品 13  2 添加購物車 14  3 支付 15  4 退出 16             ''') 17             choice = input("請輸入你的操做: ") 18             if choice == '1': 19                 print("開始瀏覽商品...") 20             elif choice == '2': 21                 print("正在添加購物車...") 22             elif choice == '3': 23                 print("正在支付...") 24             elif choice == '4': 25                 break
26         break
27     else: 28         print('登陸失敗, 請從新登陸') 29         count += 1
30 else: 31     print("輸錯的次數過多") 32 
33 print('end....')
運行結果: start... Please input your username: qiuxi Please input your password: 123 登陸成功 1 瀏覽商品 2 添加購物車 3 支付 4 退出 請輸入你的操做: 1 開始瀏覽商品... 1 瀏覽商品 2 添加購物車 3 支付 4 退出 請輸入你的操做: 2 正在添加購物車... 1 瀏覽商品 2 添加購物車 3 支付 4 退出 請輸入你的操做: 3 正在支付... 1 瀏覽商品 2 添加購物車 3 支付 4 退出 請輸入你的操做: 4 end....

上面的代碼,要想終止循環,每個while都須要對應一個break,很差配對,使用設置標誌位便可控制全部循環終止條件。

 1 name_of_db = 'qiuxi'
 2 pwd_of_db = '123'
 3 print("start...")  4 flag = True  5 count = 0  6 while flag:  7     if count == 3:  8         print("嘗試次數過多")  9         break
10     username = input("Please input your username: ") 11     password = input("Please input your password: ") 12     if username == name_of_db and password == pwd_of_db: 13         print('登陸成功') 14         while flag: 15             print('''
16  1 瀏覽商品 17  2 添加購物車 18  3 支付 19  4 退出 20             ''') 21             choice = input("請輸入你的操做: ") 22             if choice == '1': 23                 print("開始瀏覽商品...") 24             elif choice == '2': 25                 print("正在添加購物車...") 26             elif choice == '3': 27                 print("正在支付...") 28             elif choice == '4': 29                 flag = False 30                 
31     else: 32         print('登陸失敗, 請從新登陸') 33         count += 1
34 
35 print('end....')
運行結果: start... Please input your username: qiuxi Please input your password: 123 登陸成功 1 瀏覽商品 2 添加購物車 3 支付 4 退出 請輸入你的操做: 1 開始瀏覽商品... 1 瀏覽商品 2 添加購物車 3 支付 4 退出 請輸入你的操做: 4 end....

4、for 循環

Python的for循環主要用於取值,能夠遍歷任何序列的項目,如一個列表或者一個字符串。

語法:

1 for <variable> in <sequence>: 2     <statements>
3 else: 4     <statements>

range( ) 函數

若是須要遍歷數字序列,可使用內置 range( ) 函數。它會生成數列,例如:

range( )也能夠指定區間的值:

也可使 range 以指定數字開始並指定不一樣的步長

 

能夠結合 range( ) 和 len( ) 函數以遍歷一個序列的索引

補充:Python2中 range( ) 和 Python3中 range( ) 的區別

  Python2中 range( ) 函數可建立一個整數列表

  

  Python3 range() 函數返回的是一個可迭代對象(後面會學到),而不是列表類型

  

   可是能夠利用 list 函數返回列表

  

相關文章
相關標籤/搜索