Python基礎(chǔ)篇之流程控制

流程控制是計(jì)算機(jī)運(yùn)算領(lǐng)域的用語(yǔ)祖灰,意指在程序運(yùn)行時(shí),個(gè)別的指令(或是陳述券腔、子程序)運(yùn)行或求值的順序伏穆。不論是在聲明式編程語(yǔ)言或是函數(shù)編程語(yǔ)言中,都有類似的概念纷纫。

條件判斷

if elif else

與Java異曲同工蜈出,Python的條件判斷語(yǔ)句將Java中的else if 合成一個(gè)關(guān)鍵字elif。使用方法冒號(hào)代替Java中的括號(hào)涛酗,縮進(jìn)區(qū)分代碼塊铡原,判斷的表達(dá)式由比較運(yùn)算符組成(運(yùn)算符),返回一個(gè)True Or False的結(jié)果商叹。elif 和 else 不能單獨(dú)存在燕刻,根據(jù)需求可以不使用,使用時(shí)必須與if聯(lián)用剖笙,else 只能有一個(gè)卵洗。
可譯為 如果:那么->否則如果:那么->否則如果:那么->否則,例如:

a = input("請(qǐng)輸入一個(gè)數(shù)字:")
a = int(a)#將數(shù)字轉(zhuǎn)化為整型判斷
if a < 10:
    print("輸入小于10")
elif a>=10 and a<=20:
    print("輸入大于10")
else :
    print("輸入大于20")

循環(huán)遍歷

for 循環(huán)

for循環(huán)類似于Java中的增強(qiáng)循環(huán)(for a:b)弥咪,在一個(gè)可循環(huán)的集合中根據(jù)索引遍歷过蹂。掌握以下遍歷循環(huán)足夠使用了:

#定義一個(gè)可遍歷的數(shù)組
lists = ['a','b','c','d']

#一般遍歷
for t in lists:
    print(t)

#通過(guò)下標(biāo)索引遍歷1
for i in range(len(lists)):
    print(str(i)+"="+lists[i])#輸出下標(biāo)號(hào)和對(duì)應(yīng)的值
    
#通過(guò)下標(biāo)索引遍歷2 通過(guò)enumerate 枚舉實(shí)現(xiàn)
for i,t in enumerate(lists):
    print(lists[i]==t)#輸出True 通過(guò)下標(biāo)獲取到底值和直接遍歷的值一樣
    print(str(i)+"="+t)#輸出下標(biāo)號(hào)和對(duì)應(yīng)的值
    
#定義一個(gè)字典
dicts = {'a':'1','b':'2','c':'3'}
#字典遍歷循環(huán)
for (key,value) in dicts.items():
    print("key="+key+" value="+value)

while 循環(huán)

可譯為當(dāng)什么的時(shí)候:執(zhí)行什么樣的動(dòng)作,例如:

a = 10;
i = 0;
while i < 10:
    print("i="+str(i)+"小于"+str(a))
    i+=1

lists = range(10)
i = 0
#這里while in 等于 for in聚至,一般有限的遍歷我們采用 for in
while i in lists:
    print(i)
    i+=1
i = 0
for i in lists:
    print(i)

#這是一個(gè)死循環(huán)
while True:
    print("死循環(huán)")

嵌套循環(huán)

即在循環(huán)內(nèi)部嵌套循環(huán)酷勺,一般用于多維數(shù)組獲取結(jié)果。例如:

#嵌套循環(huán)一般用于遍歷多維數(shù)組或集合
a = ([1,2,3,4],[5,6,7,8],['1','b','c','d'])
for i in a:
    print(i)
    for j in i:
        print(j)

循環(huán)控制

控制循環(huán)一般會(huì)與條件判斷聯(lián)用扳躬,某些條件下需要怎樣操作循環(huán)脆诉,三個(gè)關(guān)鍵字:
break: 結(jié)束循環(huán)
coninue: 繼續(xù)循環(huán)
pass:繼續(xù)執(zhí)行甚亭,相當(dāng)于無(wú)條件,一般不用

for i in range(10):
    print("當(dāng)前i="+str(i))
    if i < 5:
        print(str(i)+" 小于5")
        continue
    elif i >= 5 and i<=7:
        print("pass ")
        pass #將其注掉和保留結(jié)果一樣击胜,見(jiàn)下圖對(duì)比
        print("pass 后面的內(nèi)容")
    elif i==len(range(10))-2:
        print("倒數(shù)第二個(gè)結(jié)束循環(huán)亏狰,此時(shí)索引下標(biāo)為:"+str(i))
        break
    print("一次 for 執(zhí)行完畢\n")

執(zhí)行結(jié)果如下,可以看出:
1偶摔、在條件一(if i < 5)處用了continue,后面的代碼沒(méi)有執(zhí)行暇唾;
2、在條件二(i >= 5 and i<=7)處用了pass辰斋,后面的語(yǔ)句正常執(zhí)行策州;
3、在條件三(i==len(range(10))-2)處用了break亡呵,結(jié)束跳出循環(huán)抽活;

有pass關(guān)鍵字 無(wú)pass關(guān)鍵字
有pass關(guān)鍵字
無(wú)pass關(guān)鍵字

異常處理

try except elif else finally

可理解為:嘗試(try)執(zhí)行代碼塊1硫戈,發(fā)生了異常則執(zhí)行代碼塊2锰什,否則(異常可能多個(gè)丁逝,不在捕獲的except內(nèi)的異常會(huì)走else分支)執(zhí)行代碼塊3汁胆,最后不管是否發(fā)生異常都執(zhí)行代碼塊4。

    try:
        # 執(zhí)行代碼快1
    except :
        #執(zhí)行代碼塊2
    else :
        #執(zhí)行代碼塊3
    finally :
        #執(zhí)行代碼塊4

掌握異常處理基本語(yǔ)法后足夠目前使用霜幼,可參考一個(gè)封裝的類方法使用截圖嫩码,該方法后面用到會(huì)詳細(xì)介紹。

圖片.png

遞歸

遞歸即在某特定情況下罪既,方法調(diào)用其自身铸题,最終返回一個(gè)結(jié)果,該部分在后面學(xué)習(xí)類和函數(shù)時(shí)會(huì)具體講到琢感,這里打個(gè)預(yù)防針丢间。


返回Python修煉冊(cè)大綱

本篇中介紹的條件判斷、循環(huán)控制驹针、異常處理烘挫、遞歸等往往會(huì)根據(jù)需求靈活自由組合使用,效果更佳柬甥。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末饮六,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子苛蒲,更是在濱河造成了極大的恐慌卤橄,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,013評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件臂外,死亡現(xiàn)場(chǎng)離奇詭異虽风,居然都是意外死亡棒口,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,205評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門辜膝,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)无牵,“玉大人,你說(shuō)我怎么就攤上這事厂抖【セ伲” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,370評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵忱辅,是天一觀的道長(zhǎng)七蜘。 經(jīng)常有香客問(wèn)我,道長(zhǎng)墙懂,這世上最難降的妖魔是什么橡卤? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,168評(píng)論 1 278
  • 正文 為了忘掉前任,我火速辦了婚禮损搬,結(jié)果婚禮上碧库,老公的妹妹穿的比我還像新娘。我一直安慰自己巧勤,他們只是感情好嵌灰,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,153評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著颅悉,像睡著了一般沽瞭。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上剩瓶,一...
    開(kāi)封第一講書(shū)人閱讀 48,954評(píng)論 1 283
  • 那天驹溃,我揣著相機(jī)與錄音,去河邊找鬼延曙。 笑死豌鹤,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的搂鲫。 我是一名探鬼主播傍药,決...
    沈念sama閱讀 38,271評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼魂仍!你這毒婦竟也來(lái)了拐辽?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 36,916評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤擦酌,失蹤者是張志新(化名)和其女友劉穎俱诸,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體赊舶,經(jīng)...
    沈念sama閱讀 43,382評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡睁搭,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,877評(píng)論 2 323
  • 正文 我和宋清朗相戀三年赶诊,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片园骆。...
    茶點(diǎn)故事閱讀 37,989評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡舔痪,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出锌唾,到底是詐尸還是另有隱情锄码,我是刑警寧澤,帶...
    沈念sama閱讀 33,624評(píng)論 4 322
  • 正文 年R本政府宣布晌涕,位于F島的核電站滋捶,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏余黎。R本人自食惡果不足惜重窟,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,209評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望惧财。 院中可真熱鬧巡扇,春花似錦、人聲如沸可缚。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,199評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)帘靡。三九已至,卻和暖如春瓤帚,著一層夾襖步出監(jiān)牢的瞬間描姚,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,418評(píng)論 1 260
  • 我被黑心中介騙來(lái)泰國(guó)打工戈次, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留轩勘,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,401評(píng)論 2 352
  • 正文 我出身青樓怯邪,卻偏偏與公主長(zhǎng)得像绊寻,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子悬秉,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,700評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 基于《Python語(yǔ)言程序設(shè)計(jì)基礎(chǔ)(第2版)》 第一部分 初識(shí)Python語(yǔ)言 第1章 程序設(shè)計(jì)基本方法 1.1 ...
    柄志閱讀 27,329評(píng)論 4 44
  • Python語(yǔ)言特性 1 Python的函數(shù)參數(shù)傳遞 看兩個(gè)如下例子澄步,分析運(yùn)行結(jié)果: 代碼一: a = 1 def...
    伊森H閱讀 3,048評(píng)論 0 15
  • 一、Python簡(jiǎn)介和環(huán)境搭建以及pip的安裝 4課時(shí)實(shí)驗(yàn)課主要內(nèi)容 【Python簡(jiǎn)介】: Python 是一個(gè)...
    _小老虎_閱讀 5,720評(píng)論 0 10
  • 一、什么是流程控制 在進(jìn)行程序設(shè)計(jì)的時(shí)候武氓,我們會(huì)經(jīng)常進(jìn)行邏輯判斷梯皿,根據(jù)不同的結(jié)果做不同的事仇箱,或者重復(fù)做某件事,我們...
    唯老閱讀 926評(píng)論 0 7
  • 其實(shí) 在我看來(lái) 準(zhǔn)備的再多 到那時(shí) 你都決定不了你的命運(yùn) 在醫(yī)院上班 看過(guò)了太多的生死離別 昨天夜班 同事和我說(shuō)7...
    阿貍在胡說(shuō)八道閱讀 458評(píng)論 0 0