1. 程式人生 > 實用技巧 >while迴圈,for迴圈

while迴圈,for迴圈

一、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()