




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
引入案例任務(wù)分析知識(shí)解析案例解析任務(wù)實(shí)訓(xùn)實(shí)訓(xùn)評(píng)價(jià)2.3.1條件語句2.3.2循環(huán)語句2.3.3列表推導(dǎo)式及zip()函數(shù)任務(wù)2.3Python流程控制語句任務(wù)2.3Python流程控制語句引入案例在會(huì)計(jì)工作中,當(dāng)利用Python程序進(jìn)行處理時(shí),很多程序會(huì)使用條件判斷語句,比如:(1)判斷商業(yè)折扣、現(xiàn)金折扣的多少;(2)資產(chǎn)是否減值;(3)判斷庫(kù)存現(xiàn)金是否超限額等。當(dāng)然,會(huì)計(jì)工作多是周而復(fù)時(shí)地做同樣的工作,比如固定資產(chǎn)計(jì)提折舊、預(yù)算的編制等,像這些工作利用Python的循環(huán)控制語句進(jìn)行處理,可以極大的提高工作效率。任務(wù)2.3Python流程控制語句任務(wù)分析Python流程控制語句有3種,最簡(jiǎn)單的程序結(jié)構(gòu)是順序結(jié)構(gòu),即一條一條順序執(zhí)行的代碼,但是有一些程序并不按順序執(zhí)行,這種情況稱為“控制轉(zhuǎn)移”,它涉及另外兩類程序控制結(jié)構(gòu),即選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。選擇結(jié)構(gòu)通過if條件語句實(shí)現(xiàn),而循環(huán)結(jié)構(gòu)通過for語句和while語句實(shí)現(xiàn)。美創(chuàng)科技有限公司有一固定資產(chǎn)原價(jià)為100000元,預(yù)計(jì)使用年限為5年,預(yù)計(jì)凈殘值10%,按平均年限法計(jì)算折舊,截止年初累計(jì)折舊為85000元,要求計(jì)算未來12個(gè)月的折舊額。美創(chuàng)科技有限公司財(cái)務(wù)人員小王如何利用Python語言實(shí)現(xiàn)呢?知識(shí)解析任務(wù)2.3Python流程控制語句2.3.1條件語句人們常常根據(jù)不同的情況來決定執(zhí)行不同的任務(wù),例如:根據(jù)是否下雨決定做公交車還是騎自行車,根據(jù)業(yè)績(jī)完成的情況決定發(fā)放獎(jiǎng)金的多少。在Python中實(shí)現(xiàn)上述條件的選擇是通過if語句實(shí)現(xiàn)的。一、單分支語句(簡(jiǎn)單的if語句)單分支語句,又稱為簡(jiǎn)單的if語句,其語法格式如下:if條件表達(dá)式:
語句塊對(duì)語法格式的說明如下:(1)條件表達(dá)式:形式不限,可以是一個(gè)單一的數(shù)值或者變量,也可以是由運(yùn)算符組成的復(fù)雜語句或者函數(shù),只要它能得到一個(gè)值就行。這個(gè)數(shù)值最終表現(xiàn)為True或False,Ture代表滿足條件,F(xiàn)alse代表不滿足條件。(2)語句塊:由具有縮進(jìn)相同的若干條語句組成,一般縮進(jìn)4個(gè)空格或者一個(gè)Tab健。if語句在執(zhí)行時(shí),首先對(duì)條件表達(dá)式進(jìn)行判定,如果條件表達(dá)式為真(條件成立),就執(zhí)行后面的代碼塊;如果條件表達(dá)式為假(條件不成立),語句塊就會(huì)被跳過,什么也不執(zhí)行。單分支語句的控制流程圖如下所示。任務(wù)2.3Python流程控制語句【做中學(xué)2.3.1】企業(yè)以年收入作為業(yè)績(jī)是否達(dá)標(biāo)的條件,年收入超過1000萬元,則輸出業(yè)績(jī)達(dá)標(biāo)。若企業(yè)今年收入1500萬元,請(qǐng)判斷業(yè)績(jī)是否達(dá)標(biāo)。#創(chuàng)建變量income存儲(chǔ)年收入income=1500#對(duì)年收入進(jìn)行判斷ifincome>1000:print('業(yè)績(jī)達(dá)標(biāo)')業(yè)績(jī)達(dá)標(biāo)【做中學(xué)2.3.1】程序如下:在Python中,if-else語句形成雙分支結(jié)構(gòu),其語法格式如下:
if條件表達(dá)式:語句塊1else:語句塊2二、雙分支語句(if-else語句)任務(wù)2.3Python流程控制語句該語句在執(zhí)行時(shí),首先對(duì)條件表達(dá)式進(jìn)行判定,如果條件表達(dá)式成立,就執(zhí)行if后面緊跟的語句塊1;如果條件表達(dá)式不成立,就執(zhí)行else后面緊跟的語句塊2。if-else語句形成的雙分支控制流程如右圖所示。任務(wù)2.3Python流程控制語句【做中學(xué)2.3.2】若企業(yè)以年收入作為業(yè)績(jī)是否達(dá)標(biāo)的條件,年收入超過1000萬元,則輸出業(yè)績(jī)達(dá)標(biāo);收入未超過1000萬元,則輸出業(yè)績(jī)不達(dá)標(biāo)。請(qǐng)根據(jù)用戶輸入的年收入判斷企業(yè)業(yè)績(jī)是否達(dá)標(biāo)。#創(chuàng)建變量income接收收入值income=float(input('營(yíng)業(yè)收入的值:'))#利用條件語句進(jìn)行判斷ifincome>1000:print('業(yè)績(jī)達(dá)標(biāo)')else:print('業(yè)績(jī)不達(dá)標(biāo)')營(yíng)業(yè)收入的值:1200
業(yè)績(jī)達(dá)標(biāo)請(qǐng)注意【做中學(xué)2.3.2】程序如下:else與冒號(hào)(:)之間沒有條件表達(dá)式。三、多分支語句(if-elif-else語句))任務(wù)2.3Python流程控制語句多分支在執(zhí)行時(shí),Python會(huì)從上到下逐個(gè)判斷條件表達(dá)式是否成立,一旦遇到某個(gè)條件成立,就執(zhí)行后面緊跟的語句塊。此時(shí),不管后面的表達(dá)式是否成立,剩下的代碼就不再執(zhí)行了。如果所有的條件都不成立,就執(zhí)行else后面的代碼塊??傊?,不管有多少個(gè)分支,都只能執(zhí)行一個(gè)分支,或者一個(gè)也不執(zhí)行,不能同時(shí)執(zhí)行多個(gè)分支。else子句是可選的,并不是必須的。任務(wù)2.3Python流程控制語句【做中學(xué)2.3.3】企業(yè)銷售人員的工資由兩部分組成:一部分是基礎(chǔ)工資,每月3000元;另一部分是獎(jiǎng)勵(lì)性工資,由月銷售額決定,具體如下表所示。銷售人員小李本月銷售額為14000,請(qǐng)計(jì)算小李本月工資并打印輸出。#創(chuàng)建變量并賦值月銷售額sale=14000#條件判斷語句ifsale>15000:bonus=sale*0.25elifsale>5000:bonus=sale*0.2else:bonus=0#計(jì)算本月工資總額并打印輸出income=3000+bonusprint('小李本月工資為:',income)小李本月工資為:5800.0【做中學(xué)2.3.3】程序如下:2.3.2循環(huán)語句一、while循環(huán)語句任務(wù)2.3Python流程控制語句這里的代碼塊,指的是縮進(jìn)格式相同的多行代碼,不過在循環(huán)結(jié)構(gòu)中,它又稱為循環(huán)體。while語句執(zhí)行的具體流程為:首先判斷條件表達(dá)式的值,其值為真(True)時(shí),則執(zhí)行代碼塊中的語句,當(dāng)執(zhí)行完畢后,再回過頭來重新判斷條件表達(dá)式的值是否為真,若仍為真,則繼續(xù)重新執(zhí)行代碼塊……如此循環(huán),直到條件表達(dá)式的值為假(False),才終止循環(huán)。while語句是常見的循環(huán)語句,它由三個(gè)要素組成,分別是循環(huán)變量的初始化、循環(huán)條件表達(dá)式、循環(huán)變量的修改(向著循環(huán)結(jié)束的方向改變)。while語句的語法格式如下:
while條件表達(dá)式:代碼塊任務(wù)2.3Python流程控制語句【做中學(xué)2.3.4】使用while循環(huán)語句,打印數(shù)字0~5。i=0#初始化循環(huán)控制變量whilei<6:#設(shè)置循環(huán)條件表達(dá)式
print(i,end="")#打印輸出變量i的值,不換行i+=1#循環(huán)變量i的修改,使得循環(huán)條件不會(huì)永遠(yuǎn)成立012345請(qǐng)注意:缺少循環(huán)變量的修改或條件表達(dá)式永遠(yuǎn)滿足(比如:while1=1)會(huì)引起死循環(huán)?!咀鲋袑W(xué)2.3.4】程序如下:【做中學(xué)2.3.5】公司制定未來五年的營(yíng)業(yè)收入目標(biāo),第一年?duì)I業(yè)收入是300萬,以后每年?duì)I業(yè)收入比上年增加10%,請(qǐng)打印輸出未來五年每年?duì)I業(yè)收入目標(biāo)值,結(jié)果保留兩位小數(shù)。i=0#初始循環(huán)控制變量whilei<5:#設(shè)置循環(huán)條件表達(dá)式sale=3000000*(1+0.1)**iprint('第%s年的營(yíng)業(yè)收入目標(biāo)為%.2f元'%(i+1,sale))
i=i+1#修改循環(huán)變量【做中學(xué)2.3.5】程序如下:第1年的營(yíng)業(yè)收入目標(biāo)為3000000.00元第2年的營(yíng)業(yè)收入目標(biāo)為3300000.00元第3年的營(yíng)業(yè)收入目標(biāo)為3630000.00元第4年的營(yíng)業(yè)收入目標(biāo)為3993000.00元第5年的營(yíng)業(yè)收入目標(biāo)為4392300.00元二、for循環(huán)語句任務(wù)2.3Python流程控制語句在語法格式中,循環(huán)變量用于存放從可迭代對(duì)象中讀取出來的元素,所以一般不會(huì)在循環(huán)中對(duì)循環(huán)變量手動(dòng)賦值;語句塊是指具有相同縮進(jìn)格式的一行或多行代碼,由于和循環(huán)結(jié)構(gòu)聯(lián)用,故此語句塊又叫循環(huán)體??傻鷮?duì)象,可以是字符串、列表、元組、字典、集合或range函數(shù)等。for循環(huán)又稱遍歷循環(huán),是因?yàn)閒or語句的循環(huán)次數(shù)是根據(jù)可迭代對(duì)象中元素的個(gè)數(shù)確定的,可以理解為從可迭代對(duì)象中逐一提取元素,然后放在循環(huán)變量中,對(duì)于所提取的每一個(gè)元素執(zhí)行一次語句塊。Python中的for循環(huán)語句,它常用于遍歷字符串、列表、元組、字典、集合等可迭代對(duì)象,逐個(gè)獲取可迭代對(duì)象中的每個(gè)元素。for循環(huán)語句的語法格式如下:
for循環(huán)變量in可迭代對(duì)象:語句塊任務(wù)2.2Python數(shù)據(jù)類型常見遍歷結(jié)構(gòu)的for語句格式格式說明foriinrange(1,6):遍歷數(shù)值序列1,2,3,4,5foriinlist1:遍歷列表list1中每個(gè)元素foriindict1:遍歷字典dict1中每個(gè)元素的鍵foriindict1.keys():遍歷字典dict1中每個(gè)元素的鍵foriindict1.values():遍歷字典dict1中每個(gè)元素的值foriindict1.items():遍歷字典dict1中每個(gè)元素的鍵值對(duì)任務(wù)2.3Python流程控制語句【做中學(xué)2.3.6】創(chuàng)建列表list1=['營(yíng)業(yè)成本','營(yíng)業(yè)收入','毛利'],創(chuàng)建字典dict1={'營(yíng)業(yè)收入':300000,'營(yíng)業(yè)成本':150000,'毛利':150000},使用for循環(huán)語句進(jìn)行遍歷。list1=['營(yíng)業(yè)成本','營(yíng)業(yè)收入','毛利']foriinlist1:print(i)print('------分割線-------')foriinrange(0,3):print(list1[i])print('------分割線-------')dict1={'營(yíng)業(yè)收入':300000,'營(yíng)業(yè)成本':150000,'毛利':150000}foriindict1:print(i)營(yíng)業(yè)成本營(yíng)業(yè)收入毛利------分割線-------營(yíng)業(yè)成本營(yíng)業(yè)收入毛利------分割線-------營(yíng)業(yè)收入營(yíng)業(yè)成本毛利【做中學(xué)2.3.6】程序如下:在執(zhí)行while循環(huán)或者for循環(huán)時(shí),只要循環(huán)條件滿足,程序?qū)?huì)一直執(zhí)行循環(huán)體。但在某些場(chǎng)景,我們可能希望在循環(huán)結(jié)束前就強(qiáng)制結(jié)束循環(huán),Python提供了2種強(qiáng)制離開當(dāng)前循環(huán)體的辦法:①使用continue語句:可以跳過執(zhí)行本次循環(huán)體中剩余的代碼,轉(zhuǎn)而執(zhí)行下一次的循環(huán);②使用break語句:可以完全終止當(dāng)前循環(huán)。三、循環(huán)跳轉(zhuǎn)語句任務(wù)2.3Python流程控制語句1.break語句無論是while循環(huán)還是for循環(huán),只要執(zhí)行break語句,就會(huì)立即結(jié)束當(dāng)前正在執(zhí)行的循環(huán)體,終止當(dāng)前循環(huán)的執(zhí)行,跳出當(dāng)前所在的循環(huán)結(jié)構(gòu)。如果該break語句在嵌套循環(huán)內(nèi)(另一個(gè)循環(huán)內(nèi)的循環(huán)),則該break語句將終止最里面的循環(huán)。break語句流程控制如右圖所示。任務(wù)2.3Python流程控制語句【做中學(xué)2.3.7】某公司的2021年前四個(gè)月營(yíng)業(yè)成本為13.3萬元、12萬元、16.1萬元、17萬元,請(qǐng)使用for循環(huán)與break篩選出營(yíng)業(yè)成本在16萬元以上的第一個(gè)月。#創(chuàng)建字典cost接收1-4月營(yíng)業(yè)成本cost={'1月':13.3,'2月':12,'3月':16.1,'4月':17}foriincost:ifcost[i]>16:print(i)break3月【做中學(xué)2.3.7】程序如下:2.continue語句continue語句用法和break語句類似,只需要在相應(yīng)的while或者for語句中加入即可。continue語句通常情況下,會(huì)結(jié)合if語句進(jìn)行搭配使用,表示在某種條件下,跳過當(dāng)前循環(huán)的剩余語句,然后繼續(xù)進(jìn)行下一輪循環(huán)。如果使用嵌套循環(huán),則continue語句將只跳出最內(nèi)層循環(huán)中的剩余語句。任務(wù)2.3Python流程控制語句【做中學(xué)2.3.8】某公司2021年前四個(gè)月營(yíng)業(yè)成本分別為13.3萬元、12萬元、16.1萬元、14萬元,請(qǐng)使用for循環(huán)與continue篩選出營(yíng)業(yè)成本在13萬元以上的所有月份。#創(chuàng)建字典cost接收1-4月營(yíng)業(yè)成本cost={'1月':13.3,'2月':12,'3月':16.1,'4月':14}foriincost:ifcost[i]<13:continueprint(i)1月3月4月【做中學(xué)2.3.8】程序如下:2.3.3列表推導(dǎo)式及zip()函數(shù)使用列表推導(dǎo)式可以快速生成一個(gè)列表,或者根據(jù)某個(gè)列表生成滿足指定需求的列表。列表推導(dǎo)式常用的語法格式如下:列表名=[表達(dá)式for變量in可迭代對(duì)象]或者:列表名=[表達(dá)式for變量in可迭代對(duì)象if條件判斷]任務(wù)2.3Python流程控制語句importrandom#導(dǎo)入random標(biāo)準(zhǔn)庫(kù)randomnumber=[random.randint(10,100)foriinrange(10)]print("生成的隨機(jī)數(shù)為:",randomnumber)生成的隨機(jī)數(shù)為:[32,90,100,22,76,70,100,41,87,71]price=[1200,5330,2988,6200,1998,8888]sale=[int(x*0.5)forxinprice]print("原價(jià)格:",price)print("打五折的價(jià)格:",sale)原價(jià)格:[1200,5330,2988,6200,1998,8888]打五折的價(jià)格:[600,2665,1494,3100,999,4444]price=[1200,5330,2988,6200,1998,8888]sale=[xforxinpriceifx>5000]print("原列表:",price)print("價(jià)格高于5000的:",sale)原列表:[1200,5330,2988,6200,1998,8888]價(jià)格高于5000的:[5330,6200,8888]【做中學(xué)2.3.9】使用列表推導(dǎo)式生成如下列表:(1)要生成一個(gè)包含10個(gè)隨機(jī)數(shù)的列表,要求數(shù)的范圍是10~100;(2)定義一個(gè)記錄商品價(jià)格的列表,然后應(yīng)用列表推導(dǎo)式生成一個(gè)將全部商品價(jià)格打五折的列表;(3)定義一個(gè)記錄商品價(jià)格的列表,然后應(yīng)用列表推導(dǎo)式生成一個(gè)商品價(jià)格高于5000的列表。【做中學(xué)2.3.9】程序如下:zip()函數(shù)以可迭代對(duì)象作為參數(shù),將可迭代對(duì)象中對(duì)應(yīng)位置的元素打包成一個(gè)個(gè)元組,返回一個(gè)zip對(duì)象,可轉(zhuǎn)換為列表或元組。zip對(duì)象轉(zhuǎn)換為列表的方法如下:使用列表推導(dǎo)式,通過for遍歷取出zip對(duì)象存儲(chǔ)的元組;通過list()函數(shù)將zip對(duì)象強(qiáng)制轉(zhuǎn)換為列表。二、zip()函數(shù)任務(wù)2.3Python流程控制語句【做中學(xué)2.3.10】創(chuàng)建兩個(gè)列表,一個(gè)用于存放會(huì)計(jì)科目,另一個(gè)用于存放余額,使用zip()函數(shù)打包并轉(zhuǎn)化為列表。#創(chuàng)建列表account=['庫(kù)存現(xiàn)金','銀行存款','銷售費(fèi)用','管理費(fèi)用']amount=[20000,100000,5000]#使用列表推導(dǎo)式對(duì)zip對(duì)象轉(zhuǎn)換print([iforiinzip(account,amount)])#使用list函數(shù)zip對(duì)象轉(zhuǎn)換list(zip(account,amount))【做中學(xué)2.3.10】程序如下:[('庫(kù)存現(xiàn)金',20000),('銀行存款',100000),('銷售費(fèi)用',5000)][('庫(kù)存現(xiàn)金',20000),('銀行存款',100000),('銷售費(fèi)用',5000)]請(qǐng)注意:當(dāng)傳入的可迭代對(duì)象中元素不一致時(shí),以元素最短的對(duì)象為準(zhǔn)進(jìn)行打包。任務(wù)2.3Python流程控制語句案例解
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【高一】【志存高遠(yuǎn)踏新程 腳踏實(shí)地創(chuàng)未來】開學(xué)第一課 -文字稿
- 分?jǐn)?shù)的初步認(rèn)識(shí)復(fù)習(xí)(教案)2024-2025學(xué)年數(shù)學(xué)三年級(jí)上冊(cè) 蘇教版
- 六年級(jí)下冊(cè)數(shù)學(xué)教案-總復(fù)習(xí)18 數(shù)形結(jié)合思想 青島版
- 三年級(jí)下冊(cè)數(shù)學(xué)教案-第七單元小數(shù)的初步認(rèn)識(shí) 青島版
- 第23課《孟子三章:得道多助失道寡助》教學(xué)設(shè)計(jì) 2024-2025學(xué)年統(tǒng)編版語文八年級(jí)上冊(cè)
- 2025年學(xué)習(xí)雷鋒精神六十二周年主題活動(dòng)方案 匯編3份
- Unit 4 Position Lesson 1 The Magic Show(教學(xué)設(shè)計(jì))-2024-2025學(xué)年北師大版(三起)英語五年級(jí)上冊(cè)
- 2025年河北省石家莊市單招職業(yè)傾向性測(cè)試題庫(kù)參考答案
- 2025年黑龍江冰雪體育職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)1套
- 2025年杭州職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)附答案
- NB/T 11431-2023土地整治煤矸石回填技術(shù)規(guī)范
- 繼續(xù)醫(yī)學(xué)教育項(xiàng)目申報(bào)表
- 《工程地質(zhì)學(xué)》孔憲立-石振明第五章(部編)課件
- 個(gè)人股份轉(zhuǎn)讓合同協(xié)議
- 聚乳酸-標(biāo)準(zhǔn)規(guī)程
- 供應(yīng)商對(duì)比方案報(bào)告
- 兒童支氣管哮喘規(guī)范化診治建議(2020年版)
- ISO28000:2022供應(yīng)鏈安全管理體系
- 【重慶市S區(qū)部分居民糖尿病知識(shí)知曉情況調(diào)研報(bào)告(含問卷)11000字(論文)】
- 臨床營(yíng)養(yǎng)技術(shù)操作規(guī)范(2010版)
- 剪映課件pptx-2024鮮版
評(píng)論
0/150
提交評(píng)論