第四天:python判斷語句和循環語句
一、判斷語句
<1>開發中的判斷場景
密碼判斷
重要日期判斷
if 今天是周六或者周日: 約妹子 if 今天是情人節: 買玫瑰 if 今天發工資: 先還信用卡的錢 if 有剩余: 又可以happy了,O(∩_∩)O哈哈~ else: 噢,no。。。還的等30天
二、if判斷語句介紹
if語句是用來進行判斷的,其使用格式如下:
if 要判斷的條件: 條件成立時,要做的事情
demo1:
age = 30 print "------if判斷開始------" if age>=18: print "我已經成年了" print "------if判斷結束------"
運行結果:
------if判斷開始------ 我已經成年了 ------if判斷結束------
demo2:
age = 16 print "------if判斷開始------" if age>=18: print "我已經成年了" print "------if判斷結束------"
運行結果:
------if判斷開始------ ------if判斷結束------
註意:
代碼的縮進為一個tab鍵,或者4個空格
三、比較、關系運算符
<1>比較(即關系)運算符
python中的比較運算符如下表
運算符 | 描述 | 示例 |
---|---|---|
== | 檢查兩個操作數的值是否相等,如果是則條件變為真。 | 如a=3,b=3則(a == b) 為 true. |
!= | 檢查兩個操作數的值是否相等,如果值不相等,則條件變為真。 | 如a=1,b=3則(a != b) 為 true. |
<> | 檢查兩個操作數的值是否相等,如果值不相等,則條件變為真。 | 如a=1,b=3則(a <> b) 為 true。這個類似於 != 運算符 |
> | 檢查左操作數的值是否大於右操作數的值,如果是,則條件成立。 | 如a=7,b=3則(a > b) 為 true. |
< | 檢查左操作數的值是否小於右操作數的值,如果是,則條件成立。 | 如a=7,b=3則(a < b) 為 false. |
>= | 檢查左操作數的值是否大於或等於右操作數的值,如果是,則條件成立。 | 如a=3,b=3則(a >= b) 為 true. |
<= | 檢查左操作數的值是否小於或等於右操作數的值,如果是,則條件成立。 | 如a=3,b=3則(a <= b) 為 true. |
<2>邏輯運算符
運算符 | 邏輯表達式 | 描述 | 實例 |
---|---|---|---|
and | x and y | 布爾"與" - 如果 x 為 False,x and y 返回 False,否則它返回 y 的計算值。 | (a and b) 返回 20。 |
or | x or y | 布爾"或" - 如果 x 是 True,它返回 True,否則它返回 y 的計算值。 | (a or b) 返回 10。 |
not | not x | 布爾"非" - 如果 x 為 True,返回 False 。如果 x 為 False,它返回 True。 | not(a and b) 返回 False |
四、if-else
<1>if-else的使用格式
if 條件: 滿足條件時要做的事情1 滿足條件時要做的事情2 滿足條件時要做的事情3 ...(省略)... else: 不滿足條件時要做的事情1 不滿足條件時要做的事情2 不滿足條件時要做的事情3 ...(省略)...
demo1
chePiao = 1 # 用1代表有車票,0代表沒有車票 if chePiao == 1: print "有車票,可以上火車" print "終於可以見到Ta了,美滋滋~~~" else: print "沒有車票,不能上車" print "親愛的,那就下次見了,一票難求啊~~~~(>_<)~~~~"
結果1:有車票的情況
有車票,可以上火車 終於可以見到Ta了,美滋滋~~~
結果2:沒有車票的情況
沒有車票,不能上課 親愛的,那就下次見了,一票難求啊~~~~(>_<)~~~~
五、elif
<1>elif的功能
elif的使用格式如下:
if xxx1: 事情1 elif xxx2: 事情2 elif xxx3: 事情3
demo:
score = 77
if score>=90 and score<=100:
print ‘本次考試,等級為A‘
elif score>=80 and score<90:
print ‘本次考試,等級為B‘
elif score>=70 and score<80:
print ‘本次考試,等級為C‘
elif score>=60 and score<70:
print ‘本次考試,等級為D‘
elif score>=0 and score<60:
print ‘本次考試,等級為E‘
<2>註意點
可以和else一起使用
if 性別為男性:
輸出男性的特征
...
elif 性別為女性:
輸出女性的特征
...
else:
第三種性別的特征
...
說明:
當“性別為男性”滿足時,執行“輸出男性的特征”的相關代碼
當“性別為男性”不滿足時,如果“性別為女性”滿足,則執行“輸出女性的特征”的相關代碼
當“性別為男性”不滿足,“性別為女性”也不滿足,那麽就默認執行else後面的代碼,即“第
三種性別的特征”的相關代碼
elif必須和if一起使用,否則出錯
六、if嵌套
<1>if嵌套的格式
if 條件1: 滿足條件1 做的事情1 滿足條件1 做的事情2 ...(省略)... if 條件2: 滿足條件2 做的事情1 滿足條件2 做的事情2 ...(省略)...
說明:
外層的if判斷,也可以是if-else
內層的if判斷,也可以是if-else
根據實際開發的情況,進行選擇
<2>if嵌套的應用
demo:
chePiao = 1 # 用1代表有車票,0代表沒有車票 daoLenght = 9 # 刀子的長度,單位為cm if chePiao == 1: print "有車票,可以進站" if daoLenght < 10: print "通過安檢" print "終於可以見到Ta了,美滋滋~~~" else: print "沒有通過安檢" print "刀子的長度超過規定,等待警察處理..." else: print "沒有車票,不能進站" print "親愛的,那就下次見了,一票難求啊~~~~(>_<)~~~~"
結果1:chePiao=1;daoLenght=9
有車票,可以進站 通過安檢 終於可以見到Ta了,美滋滋~~~
結果2:chePiao=1;daoLenght=20
有車票,可以進站 沒有通過安檢 刀子的長度超過規定,等待警察處理...
結果3:chePiao=0;daoLenght=9
沒有車票,不能進站 親愛的,那就下次見了,一票難求啊~~~~(>_<)~~~~
結果4:chePiao=0;daoLenght=20
沒有車票,不能進站 親愛的,那就下次見了,一票難求啊~~~~(>_<)~~~~
<3>應用:猜拳遊戲
1.運行效果
2.參考代碼:
import random
player = input(‘請輸入:剪刀(0) 石頭(1) 布(2):‘)
player = int(player)
computer = random.randint(0,2)
# 用來進行測試
#print(‘player=%d,computer=%d‘,(player,computer))
if ((player == 0) and (computer == 2)) or ((player ==1) and (computer == 0)) or ((player == 2) and (computer == 1)):
print(‘獲勝,哈哈,你太厲害了‘)
elif player == computer:
print(‘平局,要不再來一局‘)
else:
print(‘輸了,不要走,洗洗手接著來,決戰到天亮‘)
七、while循環
<1>while循環的格式
while 條件: 條件滿足時,做的事情1 條件滿足時,做的事情2 條件滿足時,做的事情3 ...(省略)...
demo
i = 0 while i<5: print "當前是第%d次執行循環"%(i+1) print "i=%d"%i i+=1
結果:
當前是第1次執行循環 i=0 當前是第2次執行循環 i=1 當前是第3次執行循環 i=2 當前是第4次執行循環 i=3 當前是第5次執行循環 i=4
<2>while嵌套的格式
while 條件1: 條件1滿足時,做的事情1 條件1滿足時,做的事情2 條件1滿足時,做的事情3 ...(省略)... while 條件2: 條件2滿足時,做的事情1 條件2滿足時,做的事情2 條件2滿足時,做的事情3 ...(省略)...
<3>while嵌套應用一
要求:打印如下圖形:
* * * * * * * * * * * * * * *
參考代碼:
i = 1 while i<=5: j = 1 while j<=i: print "* ", j+=1 print "" i+=1
八、break和continue
<1>break
普通的循環示例如下:
for i in range(10): print ‘----‘ print i
運行結果:
帶有break的循環示例如下:
for i in range(10): print ‘----‘ if i==3: break print i
運行結果:
小總結:
break的作用:用來結束整個循環
<2>continue
帶有continue的循環示例如下:
for i in range(10): print ‘----‘ if i==3: continue print i
運行結果:
小總結:
continue的作用:用來結束本次循環,緊接著執行下一次的循環
<3>註意點
break/continue只能用在循環中,除此以外不能單獨使用
break/continue在嵌套循環中,只對最近的一層循環起作用
本文出自 “鵬哥的博客” 博客,謝絕轉載!
第四天:python判斷語句和循環語句