1. if-esle流程判斷語(yǔ)句
我們來(lái)直接看一個(gè)例子,如下,判斷我們定義的用戶名和用戶輸入的用戶名是否一致。代碼當(dāng)中有幾個(gè)注意點(diǎn):
- 判斷的時(shí)候用
雙等號(hào)表示判斷是否一致(三個(gè)等號(hào)表示賦值)- 你有沒(méi)有注意到這里不是用的大括號(hào)而是用的冒號(hào)!
- python3對(duì)父級(jí)和子級(jí)的寫(xiě)法是極為嚴(yán)格的,就像這里的if跟else,都是父級(jí),需要頂格寫(xiě);下面的兩個(gè)子級(jí)(print那里)就需要縮進(jìn)一個(gè)tab。
_username="bentou"
_password="123456"
username=input("username:")
password=input("password:")
if _username==username and password==_password:
print("yes,ok")
else:
print("no such person")
run起來(lái)看一眼什么效果(兩種情況):


接著我們?cè)賮?lái)看一個(gè)例子:猜年齡,上面那個(gè)是最最最基礎(chǔ)的if-else語(yǔ)句,那我們之前學(xué)習(xí)其他語(yǔ)言的時(shí)候肯定有看到elseif啊之類(lèi)的??纯创a先
#猜年齡
age_of_bentou=20
guess_age=int(input("guess:"))
if guess_age > age_of_bentou :
print("too big")
elif guess_age<age_of_bentou:
print("too small")
else:
print("you git it!")
這個(gè)很明顯就是把用戶輸入的年齡跟bentou的年齡做個(gè)比較,分情況打印。
那大家可能就會(huì)想這個(gè)不好一直猜下去,那怎么樣使用戶在沒(méi)有猜對(duì)的情況下一直猜下去呢?我們很容易可以想到循環(huán)。
2. 循環(huán)語(yǔ)句
2.1 while循環(huán)
依舊是猜年齡,代碼如下:
#猜年齡
age_of_bentou=20
while True:
guess_age=int(input("guess:"))
if guess_age > age_of_bentou:
print("too big")
elif guess_age < age_of_bentou:
print("too small")
else:
print("you git it!")
break

這里有一個(gè)break,如果沒(méi)有break會(huì)怎么樣呢?這個(gè)程序就會(huì)一直讓你guess下去。提到break就會(huì)想到continue。區(qū)別:
(1)continue語(yǔ)句只結(jié)束本次循環(huán),而不是終止整個(gè)循環(huán)的執(zhí)行;
(2)break語(yǔ)句則是結(jié)束整個(gè)循環(huán)過(guò)程,不再判斷執(zhí)行循環(huán)的條件是否成立。
從產(chǎn)品的角度來(lái)講,這個(gè)代碼其實(shí)還可以做一些優(yōu)化, 比如在猜的過(guò)程當(dāng)中,如果這個(gè)人一直猜錯(cuò),我們不能一直讓他猜吧,所以我們可以給他一個(gè)上限,比如說(shuō)最多可以猜錯(cuò)三次。代碼如下:
#猜年齡
age_of_bentou=20
count=0
while count<3:
guess_age = int(input("guess:"))
if guess_age > age_of_bentou:
print("too big")
elif guess_age < age_of_bentou:
print("too small")
else:
print("you git it!")
break
count += 1
else:
print("you have tried too many times!")
我們可以看到這里有點(diǎn)跟其他語(yǔ)法不一樣,python的while是可以跟else的,驚不驚喜,意不意外!
效果如下:

2.2 for循環(huán)
同樣的,還是猜年齡,我們來(lái)用for循環(huán)試試:
#猜年齡
age_of_bentou=20
for i in range(3):
guess_age = int(input("guess:"))
if guess_age > age_of_bentou:
print("too big")
elif guess_age < age_of_bentou:
print("too small")
else:
print("you git it!")
break
else:
print("you have tried too many times!")
for i in range(3):這個(gè)意思就是從i=0開(kāi)始,循環(huán)3次,所以效果和上面的while完全一樣。
for循環(huán)還有一個(gè)功能,就是它可以有步長(zhǎng),看下面這兩個(gè)對(duì)比:
一個(gè)是從0-9循環(huán)10次:
for i in range(10):
print("loop:", i )
效果:

一個(gè)是從0-9循環(huán),每次跳一個(gè)再循環(huán),這時(shí)候步長(zhǎng)就來(lái)了:
for i in range(0,10,2):
print("loop:", i )
效果:

over!
本篇文章如有錯(cuò)的地方,歡迎在評(píng)論指正。喜歡在微信看技術(shù)文章,可以微信搜索「胡錄亂影」,回復(fù)【Python】【前端基礎(chǔ)】【vue開(kāi)發(fā)】即可獲得視頻資源,回復(fù)【答辯PPT】【演講PPT】即可獲得超級(jí)實(shí)用PPT模板,還有更多資料,建議后臺(tái)留言或者直接私信我。
另,如果覺(jué)得這本篇文章寫(xiě)得不錯(cuò),有點(diǎn)東西的話,各位人才記得來(lái)個(gè)三連【點(diǎn)贊+關(guān)注+分享】。