一、while迴圈
1.1、什麼是迴圈結構?
迴圈結構就是重複的執行某段**
1.2、為什麼需要迴圈結構?
希望計算機能夠像人一樣具備重複去執行某件事的能力
1.3、怎麼使用while迴圈結構?
1.3.1、迴圈語法的基本使用:while+else
count=0
while count<3:
count+=1
else:
print(count)
1.3.2、死迴圈與效率問題
while true:
print(1+1) # 純計算無io會導致致命的效率問題。
1.3.3、退出迴圈的兩種方式
1.3.3.1、將條件改為false,下次迴圈判斷條件時才會生效。while+tag
tag=true
while tag:
inp_name = input('請輸入你的賬號:')
inp_pwd = input('請輸入你的密碼:')
if inp_name == ursename and inp_pwd == input:
print('登陸成功')
tag=false
else:
print('賬號或密碼錯誤')
1.3.3.2、break,只要執行到break,就會立即斷開本層迴圈
while true:
inp_name = input('請輸入你的賬號:')
inp_pwd = input('請輸入你的密碼:')
if inp_name == ursename and inp_pwd == input:
print('登陸成功')
break
else:
print('賬號或密碼錯誤')
1.3.4、while巢狀迴圈與結束
1.3.4.1、將條件改成false
username = '123'
password = '321'
tag=true
while tag
inp_name=input('請輸入賬號:')
inp_psd = input('請輸入密碼:')
if inp_name == username and inp_psd == password:
print('登入成功')
while tag:
cmd=input('請輸入命令:')
if cmd=='q':
print('正在登入')
tag=false
else:
print('請輸入正確命令:'.format(cmd=a))
else:
print('登入失敗')
1.3.4.2、用break退出
username = '123'
password = '321'
while 1:
inp_name=input('請輸入賬號:')
inp_psd = input('請輸入密碼:')
if inp_name == username and inp_psd == password:
print('登入成功')
while :1:
cmd=input('請輸入命令:')
if cmd=='q':
print('正在登入')
break
else:
print('請輸入正確命令:'.format(cmd=a))
break
else:
print('登入失敗')
count =0
while count <6:
if count == 4:
count +=1
continue
print(count)
count +=1
1.3.6、案例
要求:允許登入三次,失敗則退出,成功要求輸入命令,否則繼續輸入
username = 『123』
password = '321'
count = 0
while count < 3:
inp_name = input('請輸入你的賬號:')
inp_psd = input('請輸入你的密碼:')
if username == inp_name and password == inp_psd:
print('賬號密碼正確')
while 1:
tag = input('請輸入指令:')
if tag==『a』:
print('正在登入中')
break
else:
print('輸入的指令錯誤,請重新輸入').format
break
else:
print('賬號密碼錯誤三次,已關閉')
二、深淺copy
在使用程式編寫過程中需要將值進行拷貝,更改其中乙個變數,另乙個變數值不能變化。這就需要深淺copy了。
2.1、賦值
二者分隔不開,a改b也跟著該,因為指向的就是同乙個位址
a=b2.2、淺copy列表
a=[1,2,[3,4]]
b=a.copy()
print(id(a[0]),id(a[1]),id(a[2]))
print(id(b[0]),id(b[1]),id(b[2]))
a[0]=5
a[1]=6
a[2][0]=7
a[2][1]=8
print(id(a[0]),id(a[1]),id(a[2]))
print(id(b[0]),id(b[1]),id(b[2]))
如需所示:變化前和變化後的狀態
2.3、深copy列表
a=[1,2,[3,4]]
import copy
b=copy.deepcopy(a)
print(id(a[0]),id(a[1]),id(a[2]))
print(id(b[0]),id(b[1]),id(b[2]))
a[0]=5
a[1]=6
a[2][0]=7
a[2][1]=8
print(id(a[0]),id(a[1]),id(a[2]))
print(id(b[0]),id(b[1]),id(b[2]))
如圖所示:
for迴圈和while迴圈
while迴圈 語法 while 判斷條件 迴圈體 計算 1 2 3 4 100 n 1 res 0 while n 100 res n n 1 print res 5050while迴圈之else 語法 while 判斷條件 迴圈體else 語句塊for迴圈 for x in 序列 迴圈體rang...
python迴圈之while迴圈
python中迴圈有兩種,while和for迴圈。在while迴圈中,當while值為true時,while迴圈會一直進行下去 無限迴圈 直到當while值為false時,while迴圈才會停止。while迴圈結構 無限迴圈 a true while值 while a print hello,wor...
Python迴圈之while迴圈
while 條件 迴圈體我們先借助一小段 認識下while迴圈,得到它的基本原理 while true print 狼的 print 我們不一樣 print 愛情買賣 print 不將就 print 年少有為 我們知道,是自上而下執行的,當直譯器看到while它會幹什麼呢,它會先判斷你while後面...