版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
2023/8/91Python基礎(chǔ)
分支與循環(huán)
2023/7/301Python基礎(chǔ)
分支與循環(huán)
2023/8/92目錄
程序基本結(jié)構(gòu)分支結(jié)構(gòu)
循環(huán)結(jié)構(gòu)
布爾表達式
練習(xí)總結(jié)2023/7/302目錄程序基本結(jié)構(gòu)2023/8/93程序設(shè)計基本結(jié)構(gòu)任何算法(程序)都可以由順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)這三種基本結(jié)構(gòu)組合來實現(xiàn)。2023/7/303程序設(shè)計基本結(jié)構(gòu)任何算法(程序)都可以2023/8/94順序結(jié)構(gòu)順序結(jié)構(gòu)中,按語句的自然順序一次執(zhí)行。用順序結(jié)構(gòu)描述將華氏溫度F轉(zhuǎn)換成攝氏溫度C的流程。算法:C=5/9*(F-32)2023/7/304順序結(jié)構(gòu)順序結(jié)構(gòu)中,按語句的自然順序一次2023/8/95選擇結(jié)構(gòu)2023/7/305選擇結(jié)構(gòu)2023/8/96循環(huán)結(jié)構(gòu)2023/7/306循環(huán)結(jié)構(gòu)2023/8/97流程圖-表示算法
例:求給定半徑R的圓面積和圓周長這是一個數(shù)學(xué)問題。算法:2023/7/307流程圖-表示算法例:求給定半徑R的圓面2023/8/98流程圖-表示算法
例:求給定半徑R的絕對值。算法:這是分支程序結(jié)構(gòu)2023/7/308流程圖-表示算法例:求給定半徑R的絕對2023/8/99流程圖-表示算法例:給定K值,求1到K,連加和。Sum里保存:1+2+3+…+K的連加和。重復(fù)進行某種運算,運算對象有規(guī)律地變化。采用循環(huán)結(jié)構(gòu)。2023/7/309流程圖-表示算法例:給定K值,求1到K2023/8/910目錄
程序基本結(jié)構(gòu)分支結(jié)構(gòu)
循環(huán)結(jié)構(gòu)
布爾表達式總結(jié)2023/7/3010目錄程序基本結(jié)構(gòu)2023/8/911生活中的判斷2023/7/3011生活中的判斷2023/8/912PM2.5指數(shù)分級例子程序功能的IPO模式描述為:輸入:接受外部輸入PM2.5值處理:空氣質(zhì)量分級算法輸出:打印空氣質(zhì)量提醒2023/7/3012PM2.5指數(shù)分級例子程序功能的IPO2023/8/913PM2.5指數(shù)分級例子-流程圖2023/7/3013PM2.5指數(shù)分級例子-流程圖2023/8/914
pm25.py2023/7/3014pm25.py2023/8/915if語句格式語句格式如下
其中<condition>是條件表達式,<body>是一個或多個語句序列先判斷<condition>條件:True,則執(zhí)行<body>,再轉(zhuǎn)向下一條語句False,則直接跳過<body>,轉(zhuǎn)向下一條語句2023/7/3015if語句格式語句格式如下2023/8/916說明:比較運算符2023/7/3016說明:比較運算符2023/8/917說明:邏輯運算符2023/7/3017說明:邏輯運算符2023/8/918二分支決策二分支語法結(jié)構(gòu)如下:
Python解釋器首先評估<condition>
如果<condition>是真的,if下面的語句被執(zhí)行;
如果<condition>是假的,else下面的語句被執(zhí)行。2023/7/3018二分支決策二分支語法結(jié)構(gòu)如下:2023/8/919二分支決策—示例注意:冒號不能??;if和else對齊,并且前面不能有空格。2023/7/3019二分支決策—示例注意:冒號不能?。?023/8/920多分支決策多分支決策是解決復(fù)雜問題的重要手段之一
一個三分支決策可以由兩個二分支結(jié)構(gòu)嵌套實現(xiàn)
使用if-else描述多分支決策時,實現(xiàn)更多分支需要更多嵌套,影響程序的易讀性
Python使用if-elif-else描述多分支決策,簡化分支結(jié)構(gòu)的嵌套問題2023/7/3020多分支決策多分支決策是解決復(fù)雜問題的2023/8/921多分支決策使用if-elif-else描述多分支決策:
Python輪流評估每個條件,來尋找條件為True的分支,并執(zhí)行該分支下的語句;如果沒有任何條件成立,else下面的語句被執(zhí)行,else子句是可選的。2023/7/3021多分支決策使用if-elif-els2023/8/922PM2.5指數(shù)分級例子(版本升級)使用if-elif-else結(jié)構(gòu)改進之前的程序:2023/7/3022PM2.5指數(shù)分級例子(版本升級)使2023/8/923PM2.5指數(shù)分級例子(采用小于條件)2023/7/3023PM2.5指數(shù)分級例子(采用小于條件)2023/8/924如果按照分?jǐn)?shù)劃定結(jié)果:
90分或以上:excellent
80分或以上:good
60分或以上:passed
60分以下:failed請編寫程序根據(jù)分?jǐn)?shù)打印結(jié)果。鞏固練習(xí)2023/7/3024如果按照分?jǐn)?shù)劃定結(jié)果:鞏固練習(xí)2023/8/925猜拳游戲2023/7/3025猜拳游戲2023/8/926試一試編寫一個python程序,輸入兩個數(shù),比較它們的大小并輸出其中較大者。2023/7/3026試一試編寫一個python程序,輸入兩2023/8/927目錄
程序基本結(jié)構(gòu)分支結(jié)構(gòu)
循環(huán)結(jié)構(gòu)
布爾表達式總結(jié)2023/7/3027目錄程序基本結(jié)構(gòu)2023/8/928生活中的循環(huán)2023/7/3028生活中的循環(huán)2023/8/929軟件開發(fā)中循環(huán)的使用場景跟媳婦承認(rèn)錯誤,說一萬遍“媳婦兒,我錯了!”
print“媳婦兒,我錯了!” print“媳婦兒,我錯了!” print“媳婦兒,我錯了!”
…(還有997遍)…使用循環(huán),一句話搞定 i=0 whilei<10000: print“媳婦兒,我錯了!” i+=12023/7/3029軟件開發(fā)中循環(huán)的使用場景跟媳婦承認(rèn)錯誤2023/8/930一般情況下,需要多次重復(fù)執(zhí)行的代碼,都可以用循環(huán)的方式來完成循環(huán)不是必須要使用的,但是為了提高代碼的重復(fù)使用率,所以有經(jīng)驗的開發(fā)者都會采用循環(huán)循環(huán)結(jié)構(gòu)2023/7/3030一般情況下,需要多次重復(fù)執(zhí)行的代碼,都2023/8/931循環(huán)結(jié)構(gòu)回顧2023/7/3031循環(huán)結(jié)構(gòu)回顧2023/8/932for循環(huán)for循環(huán)作為編程語言中最強力的特征之一Python可以使用for語句循環(huán)遍歷整個序列的值for循環(huán)所做的概括為一句話:
于…其中的每一個元素,做…事情2023/7/3032for循環(huán)for循環(huán)作為編程語言中2023/8/933for循環(huán)在for循環(huán)中,循環(huán)變量var遍歷了隊列中的每一個值,循環(huán)的語句體為每個值執(zhí)行一次。
2023/7/3033for循環(huán)在for循環(huán)中,循環(huán)變量va2023/8/934for循環(huán)2023/7/3034for循環(huán)2023/8/935for循環(huán)
為了更深入了解for循環(huán),試著思考下面這個問題,如何打印出這樣的結(jié)果? 1+1=2 2+1=3 … 10+1=11
內(nèi)置函數(shù)-------range()
2023/7/3035for循環(huán)為了更深入了解for循環(huán),2023/8/9362023/7/30362023/8/937for循環(huán)-求平均數(shù)
平均數(shù)計算程序的IPO如下:輸入:待輸入數(shù)字個數(shù),數(shù)字處理:平均數(shù)算法輸出:平均數(shù)
通用設(shè)計方案:輸入數(shù)字的個數(shù)n將sum初始化為0循環(huán)n次:
輸入數(shù)字x
將x加入sum中
將sum/n作為平均數(shù)輸出出來2023/7/3037for循環(huán)-求平均數(shù)平均數(shù)計算程序的2023/8/938for循環(huán)-代碼2023/7/3038for循環(huán)-代碼2023/8/939for循環(huán)-執(zhí)行
以下是程序的執(zhí)行結(jié)果:2023/7/3039for循環(huán)-執(zhí)行以下是程序的執(zhí)行結(jié)果2023/8/940for循環(huán)-缺點程序開始時必須提供輸入數(shù)字總數(shù)
大規(guī)模數(shù)字求平均值需要用戶首先確定個數(shù)for循環(huán)是需要提供固定循環(huán)次數(shù)的循環(huán)方式Python提供了另一種循環(huán)模式即無限循環(huán),不需要提前知道循環(huán)次數(shù),即我們提到的當(dāng)型循環(huán)也叫條件循環(huán)2023/7/3040for循環(huán)-缺點程序開始時必須提供輸2023/8/941for與if相結(jié)合
如何實現(xiàn)這樣一個程序:歌曲列表中有三首歌“HolyDiver,Thunderstruck,RebelRebel”,當(dāng)播放到每首時,分別顯示歌手名字“Dio,AC/CD,DividBowie”?
2023/7/3041for與if相結(jié)合如何實現(xiàn)這樣一個程2023/8/942嵌套循環(huán)
編程中還有一種常見的循環(huán),被稱之為嵌套循環(huán),其實這種循環(huán)并不復(fù)雜還非常實用。
例如:“九九乘法表”
2023/7/3042嵌套循環(huán)編程中還有一種常見的循環(huán),被2023/8/943嵌套循環(huán)例:“九九乘法表”
原理:最外層的循環(huán)依次是將數(shù)值1~9存儲到變量i中,變量i每取一次值,內(nèi)層循環(huán)就要依次將1~9中存儲在變量j中,最后展示當(dāng)前的i,j,與i*j的結(jié)果。
2023/7/3043嵌套循環(huán)例:“九九乘法表”2023/8/944while循環(huán)語法:while語句while語句中<condition>是布爾表達式
<body>循環(huán)體是一條或多條語句當(dāng)條件為真時,循環(huán)體重復(fù)執(zhí)行當(dāng)條件為假時,循環(huán)終止
在while循環(huán)中,條件總是在循環(huán)頂部被判斷,即在循環(huán)體執(zhí)行之前,這種結(jié)構(gòu)又被稱為前測循環(huán)只要…條件成立,就一直做,,,2023/7/3044while循環(huán)語法:while語句只2023/8/945while循環(huán)下面是使用while循環(huán)完成從0到10的求和打印平均值的例子:如果循環(huán)體忘記累加i,條件判斷一直為真,循環(huán)體將一直執(zhí)行,這就是所謂的死循環(huán)。這時通常使用<Ctrl>+c來終止一個程序2023/7/3045while循環(huán)下面是使用while循2023/8/946for/while中的else、break用法
break語句—跳出最內(nèi)層的for/while循環(huán)2023/7/3046for/while中的else、bre2023/8/947for/while中的continue用法
continue語句,其作用為結(jié)束本次循環(huán)、即跳出循環(huán)體中下面尚未執(zhí)行的語句,對于while循環(huán),繼續(xù)求解循環(huán)條件。而對于for循環(huán)程序流程接著遍歷循環(huán)列表。
continue和break語句的區(qū)別是:
continue語句只結(jié)束本次循環(huán),而不終止整個循環(huán)的執(zhí)行。break語句結(jié)束整個循環(huán)過程,不再判斷執(zhí)行循環(huán)的條件是否成立2023/7/3047for/while中的continue2023/8/948for/while中的else用法<for…else:…><while…else:…>語句與循環(huán)的搭配使用,else:后的表達式在for循環(huán)列表遍歷完畢后或while條件語句不滿足的情況下執(zhí)行,例如:2023/7/3048for/while中的else用法<2023/8/949目錄
程序基本結(jié)構(gòu)分支結(jié)構(gòu)
循環(huán)結(jié)構(gòu)
布爾表達式總結(jié)2023/7/3049目錄程序基本結(jié)構(gòu)50布爾表達式條件語句和循環(huán)語句都是用布爾表達式作為條件
布爾值為真或假,以False和True表示前面經(jīng)常使用布爾表達式比較兩個值,如:whilex>=050布爾表達式條件語句和循環(huán)語句都是用布爾表達式作為條件51布爾操作符的引入簡單條件在復(fù)雜決策情況下存在一定缺陷
例如,確定兩個點是否在同一位置,即是否有相同的x坐標(biāo)和y坐標(biāo),下面是處理代碼片段:51布爾操作符的引入簡單條件在復(fù)雜決策情況下存在一定缺陷2023/8/952布爾操作符布爾操作符:and,or和not
布爾運算符and和or用于組合兩個布爾表達式,并產(chǎn)生一個布爾結(jié)果<expr>and<expr><expr>or<expr>not運算符是一個一元運算符,用來計算一個布爾表達式的反not<expr>2023/7/3052布爾操作符布爾操作符:and,or和2023/8/953布爾操作結(jié)果—真值表2023/7/3053布爾操作結(jié)果—真值表2023/8/954布爾操作符使用布爾運算符,可以建立任意復(fù)雜的布爾表達式
例如:a
ornotband
c
Python中布爾運算符的優(yōu)先級,從高到低依次是not、and、or
所以上面的表達式等于如下這個帶括號的版本:
(
a
or((notb)
and
c))2023/7/3054布爾操作符使用布爾運算符,可以建立2023/8
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年特種功能焊接材料合作協(xié)議書
- 2025年P(guān)P改性新材料合作協(xié)議書
- 2025年玻璃纖維仿形織物合作協(xié)議書
- 2025年水質(zhì)監(jiān)測系統(tǒng)合作協(xié)議書
- 八年級英語下冊 Unit 3 單元綜合測試卷(人教版 2025年春)
- 2024-2025學(xué)年河北省石家莊市高新區(qū)四年級(上)期末數(shù)學(xué)試卷
- 三年級作文詩歌:乒乓球賽
- 2025年個體工商戶雇傭合同(2篇)
- 2025年人才培訓(xùn)勞動合同樣本(2篇)
- 2025年中學(xué)高三年級下學(xué)期班級工作總結(jié)(三篇)
- 2024年長沙航空職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫完整
- 腫瘤微環(huán)境在癌癥進展中的作用研究
- 上海市發(fā)展改革研究院工作人員招考聘用12人公開引進高層次人才和急需緊缺人才筆試參考題庫(共500題)答案詳解版
- 2024年上海市各區(qū)高三語文二模試卷【文言文閱讀題】匯集練附答案解析
- 家禽消化系統(tǒng)認(rèn)知
- 元宇宙技術(shù)與應(yīng)用智慧樹知到期末考試答案章節(jié)答案2024年中國科學(xué)技術(shù)大學(xué)
- 攪拌設(shè)備行業(yè)發(fā)展趨勢分析報告
- 中醫(yī)院縣域緊密型醫(yī)共體雙向轉(zhuǎn)診管理制度
- 鍋爐安裝質(zhì)量手冊
- 建筑工程質(zhì)量、安全與進度管控
- 復(fù)工復(fù)產(chǎn)安全培訓(xùn)考試題
評論
0/150
提交評論