知識
不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價值,我們在追求其視覺表現(xiàn)的同時,更側(cè)重于功能的便捷,營銷的便利,運營的高效,讓網(wǎng)站成為營銷工具,讓軟件能切實提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序為后期升級提供便捷的支持!
循環(huán)與分支——python
發(fā)表時間:2019-7-6
發(fā)布人:葵宇科技
瀏覽次數(shù):26
循環(huán)結(jié)構(gòu)
程序設(shè)計中,最能發(fā)揮計算機(jī)特長的結(jié)構(gòu):循環(huán)結(jié)構(gòu)
需要重復(fù)進(jìn)行某種運算,并且運算對象有規(guī)律變化的情況,使用循環(huán)結(jié)構(gòu)
使用for n in range(2,10)時,不包括10
python中不支持直到型循環(huán)結(jié)構(gòu)(后測循環(huán)實現(xiàn))
但可以通過while語句間接實現(xiàn):
number = -1
while number < 0
number = eval(input("Enter a positive number:"))
或者
while True:
number = eval(input("Enter a positive number:"))
if x >= 0 : break;
#若數(shù)字有效跳出循環(huán),哨兵循環(huán)
print("The number you entered was not positive")
注意:與Java、C區(qū)別最大的地方
<for… else: …> <while… else: …>語句與循環(huán)的搭配使用,else:后的表達(dá)式在for循環(huán)列表遍歷完畢后或while 條件語句不滿足的情況下執(zhí)行,
# months.py
def main():
for n in range(2,10):
for x in range(2,n):
print("({},{})\t".format(n,x))
if n%x == 0:
print(n,'equals',x,'*',n//x)
break;
else:
# loop fell through without finding a factor
print(n,'is a prime number')
main()
輸出:
2 is a prime number
(3,2)
3 is a prime number
(4,2)
4 equals 2 * 2
(5,2)
(5,3)
(5,4)
5 is a prime number
(6,2)
6 equals 2 * 3
(7,2)
(7,3)
(7,4)
(7,5)
(7,6)
7 is a prime number
(8,2)
8 equals 2 * 4
(9,2)
(9,3)
9 equals 3 * 3
分支結(jié)構(gòu)
if<condition1>:
<case1 statements>
elif <condition2>:
<case2 statements>
……
else:
<default statements>
條件判斷
循環(huán)和分支使用的條件循環(huán)語句這里使用的不是!、||、&&,而是布爾表達(dá)式not、or、and
布爾表達(dá)式滿足或?qū)εc、與對或的分配律,滿足德摩根定理
有時候?qū)ふ乙粋€循環(huán)終止的條件比尋找一個循環(huán)繼續(xù)的條件更容易,但是條件過于復(fù)雜,解決方法:
對布爾表達(dá)式使用幾次德摩根定律
注意不要將while rep==‘y’ or rep==‘Y’, 錯寫成 while rep == ‘y’ or ‘Y’, 因為’Y’是一個非空串,永遠(yuǎn)為真
對于數(shù)字的0值默認(rèn)為假,對于空字符串""默認(rèn)為假,空序列默認(rèn)為假。
python的布爾運算符為短路運算符,當(dāng)前面的表達(dá)式已經(jīng)可以得出該布爾表達(dá)式的真假時,布爾表達(dá)式便不再進(jìn)行下去。
即x and y中,當(dāng)x為假,則不在計算y的真假;
x or y中,當(dāng)x為真,就不在判斷y的真假。
舉個栗子,當(dāng)用戶僅敲下回車鍵時,input()函數(shù)讀入的串為空串,下面寫一個函數(shù),當(dāng)用戶輸入為空時,將字符串賦值為vanilla
實現(xiàn)方法一:
ans = input("What flavor do you want [vanilla]:")
if ans :
flavor = ans
else:
flavor = "vanilla"
實現(xiàn)方法二:
ans = input(“What flavor do you want [vanilla]:”)
flavor = ans or “vanilla”
或
flavor= input("What flavor do you want [vanilla]:") or "vanilla"
異常處理
當(dāng)處理錯誤或特殊情況的分支語句過多,會導(dǎo)致主程序變得不清晰易讀,于是,引入異常處理機(jī)制來解決程序運行時的錯誤。
Python解釋器遇到一個try語句,它會嘗試執(zhí)行try語句體內(nèi)的語句
如果沒有錯誤,控制轉(zhuǎn)到try-except后面的語句
如果發(fā)生錯誤,Python解釋器會尋找一個符合該錯誤的異常語句,然后執(zhí)行處理代碼
try:
<body>
except <ErrorType1>:
<handler1>
except <ErrorType2>:
<handler2>
except <ErrorType3>:
<handler3>
except:
<handler0>
相關(guān)案例查看更多
相關(guān)閱讀
- 報廢車管理系統(tǒng)
- 小程序開發(fā)費用
- 昆明網(wǎng)站制作
- 云南小程序開發(fā)
- 云南省建設(shè)廳網(wǎng)站官網(wǎng)
- 網(wǎng)站建設(shè)公司哪家好
- 網(wǎng)站開發(fā)
- 汽車報廢回收軟件
- 網(wǎng)站優(yōu)化公司
- 安家微信小程序
- 云南軟件定制公司
- 網(wǎng)站建設(shè)需要多少錢
- 云南小程序開發(fā)報價
- 網(wǎng)站建設(shè)專家
- 專業(yè)網(wǎng)站建設(shè)公司
- 網(wǎng)站上首頁
- 麗江小程序開發(fā)
- 霸屏推廣
- 保險網(wǎng)站建設(shè)公司
- 英文網(wǎng)站建設(shè)公司
- 小程序退款
- 網(wǎng)站搭建
- web學(xué)習(xí)路線
- 小程序開發(fā)聯(lián)系方式
- 云南網(wǎng)站建設(shè)服務(wù)公司
- 前端
- 網(wǎng)站建設(shè)快速優(yōu)化
- 云南建站公司
- 海南小程序制作公司
- 云南網(wǎng)站開發(fā)哪家好