while迴圈,for迴圈
阿新 • • 發佈:2020-07-09
一、while迴圈
1、語法:
while 條件:
程式碼1
程式碼2
程式碼3
...
2、基本使用
使用(1)
print('start.....') while 10 < 3: print('hello1') print('hello2') print('hello3') print('end....')
使用(2)
count = 0 while count < 6: print(count) count += 1 print('end.....')
3、如何結束while迴圈
(1)把條件改為False
(2)break:直接終止本層迴圈
#把條件改為False db_name = "egon" db_pwd = "123" tag = True while tag: inp_name = input("請輸入您的使用者名稱: ") inp_pwd = input("請輸入您的密碼: ") if inp_name == db_name and inp_pwd == db_pwd: print("使用者登入成功") tag = False else: print("使用者賬號或密碼錯誤") print('其他。。。。。。。。。') #(2)break:直接終止本層迴圈 db_name = "egon" db_pwd = "123" while True: inp_name = input("請輸入您的使用者名稱: ") inp_pwd = input("請輸入您的密碼: ") if inp_name == db_name and inp_pwd == db_pwd: print("使用者登入成功") break else: print("使用者賬號或密碼錯誤") print('其他。。。。。。。。。')
4、死迴圈
while True: print('Hello') input(">>: ")
5、while+continue: 終止本次迴圈
強調1:不要在continue之後編寫同級別的程式碼
強調2: 如果不想執行本次迴圈之後的程式碼,可以用continue,但是如果本次迴圈本來就沒有要繼續執行的後續程式碼了,就沒必要加continue了
#強調1:不要在continue之後編寫同級別的程式碼 #打印出1,2,5 count = 0 while count < 6: if count == 3 or count == 4: count += 1 continue # count+=1 # 不要寫在這裡 print(count) count += 1 #強調2: 如果不想執行本次迴圈之後的程式碼,可以用continue,但是如果本次迴圈本來就沒有要繼續執行的後續程式碼了,就沒必要加continue了 db_name = "egon" db_pwd = "123" while True: inp_name = input("請輸入您的使用者名稱: ") inp_pwd = input("請輸入您的密碼: ") if inp_name == db_name and inp_pwd == db_pwd: print("使用者登入成功") break else: print("使用者賬號或密碼錯誤") # continue沒必要寫了
6、while+else
#打印出1,2,3 count = 1 while count < 6: print(count) if count == 3: break count+=1 else: print('會在while迴圈正常死亡之後執行') #打印出1,2,3, 4,5 count = 1 while count < 6: print(count) # if count == 3: # break count+=1 else: print('會在while迴圈正常死亡之後執行')
7、while迴圈巢狀
while True: while True: while True: break break break tag = True while tag: while tag: while tag: tag = False
#使用者登入成功後輸入指令,輸入0時,退出系統 db_name = "egon" db_pwd = "123" while True: inp_name = input("請輸入您的使用者名稱: ") inp_pwd = input("請輸入您的密碼: ") if inp_name == db_name and inp_pwd == db_pwd: print("使用者登入成功") while True: print(""" 0 退出 1 取款 2 提現 3 轉賬 """) cmd=input("請輸入您的命令編號:") if cmd == "0": break elif cmd == "1": print("正在取款") elif cmd == "2": print("正在提現") elif cmd == "3": print("正在轉賬") else: print("不知道的指令,請重新輸入") break else: print("使用者賬號或密碼錯誤")
# tag的方式結束迴圈 db_name = "egon" db_pwd = "123" tag = True while tag: inp_name = input("請輸入您的使用者名稱: ") inp_pwd = input("請輸入您的密碼: ") if inp_name == db_name and inp_pwd == db_pwd: print("使用者登入成功") while tag: print(""" 0 退出 1 取款 2 提現 3 轉賬 """) cmd=input("請輸入您的命令編號:") if cmd == "0": tag = False elif cmd == "1": print("正在取款") elif cmd == "2": print("正在提現") elif cmd == "3": print("正在轉賬") else: print("不知道的指令,請重新輸入") else: print("使用者賬號或密碼錯誤")
二、for迴圈
1、概念:
(1)for迴圈主要用於迴圈取值,例如列表、字典、字串
(2)for迴圈迴圈的次數取決於值的個數
while迴圈迴圈的次數取決條件什麼時候變為False或者什麼時候執行break
2、基本使用
l = [1111, 222, 333, 444, 555] #用while迴圈 i = 0 while i < len(l): print(l[i]) i += 1 #用for迴圈 #列表 for x in l: print(x) #字典 # d = {"k1": 111, "k2": 2222, "k3": 33333} # for k in d: # print(k,d[k]) #字串 # msg="hello world" # for x in msg: # print(x) #列表中套列表 l = [["aaa", 1111], ["bbb", 2222], ["ccc", 3333]] for x, y in l: # x,y=["aaa",1111] print(x, y)
3、for + break
for x in [111,222,333,4444,555]: if x == 333: break print(x)
4、for + continue
for x in [111,222,333,4444,555]: if x == 333: continue print(x)
5、for + else
for x in [111,222,333,4444,555]: if x == 333: break print(x) else: print('=====>')
6、for+range()