Python編程基礎(chǔ)(第3版)(微課版)課件 4.3 Python的選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)進階用法_第1頁
Python編程基礎(chǔ)(第3版)(微課版)課件 4.3 Python的選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)進階用法_第2頁
Python編程基礎(chǔ)(第3版)(微課版)課件 4.3 Python的選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)進階用法_第3頁
Python編程基礎(chǔ)(第3版)(微課版)課件 4.3 Python的選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)進階用法_第4頁
Python編程基礎(chǔ)(第3版)(微課版)課件 4.3 Python的選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)進階用法_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

Python的選擇結(jié)構(gòu)和

循環(huán)結(jié)構(gòu)進階用法1組合選擇結(jié)構(gòu)與循環(huán)結(jié)構(gòu)目錄變量迭代2列表解析3【任務(wù)4-5】使用冒泡排序法排序4【任務(wù)4-6】輸出數(shù)字金字塔5>>>d={'a':1,'b':2,'c':3}>>>forkeyind:...print(key)abc迭代給定一個列表或元組,如果通過for循環(huán)可以遍歷這個列表或元組,那么將這種遍歷稱為迭代。在Python中,迭代是通過for…in…語句來完成的。Python的for循環(huán)不僅可以用于列表或元組,還可以用于其他可迭代對象。列表和元組數(shù)據(jù)類型有索引,但很多其他數(shù)據(jù)類型是沒有索引的,只要是可迭代對象,無論是否有索引,都可以進行迭代。字典的迭代示例代碼如下。>>>forx,yin[(1,1),(2,4),(3,9)]:...print(x,y)112439for循環(huán)的迭代在Python中,使用for循環(huán)同時引用兩個變量的示例代碼如下。除此之外,還可以使用for循環(huán)同時引用3個變量,具體示例代碼如下。>>>forx,y,zin[(1,2,3),(4,5,6),(7,8,9)]:...print(x,y,z)1234567891組合選擇結(jié)構(gòu)與循環(huán)結(jié)構(gòu)目錄變量迭代2列表解析3【任務(wù)4-5】使用冒泡排序法排序4【任務(wù)4-6】輸出數(shù)字金字塔5>>>forxinrange(10,15):#迭代10~14的數(shù)字...foriinrange(2,x):#根據(jù)因子迭代...ifx%i==0:#確定第1個因子...j=x/i#計算第2個因子...print('%d等于%d*%d'%(x,i,j))...break#終止當(dāng)前循環(huán)...else:#循環(huán)的else部分...print(x,'是一個質(zhì)數(shù)')...10等于2*511是一個質(zhì)數(shù)12等于2*613是一個質(zhì)數(shù)14等于2*7for循環(huán)與選擇結(jié)構(gòu)的組合在循環(huán)結(jié)構(gòu)中放入選擇結(jié)構(gòu),可以使循環(huán)實現(xiàn)更多的功能。for循環(huán)與選擇結(jié)構(gòu)的組合應(yīng)用示例代碼如右。如右代碼使用for循環(huán)和if語句判斷數(shù)據(jù)是否為質(zhì)數(shù)并輸出結(jié)果。if語句后面的表達式的意思是判斷x對i求余的結(jié)果是否為0,當(dāng)結(jié)果為0時,x就不是質(zhì)數(shù),否則x是質(zhì)數(shù)。>>>count=0>>>whilecount<5:...ifcount>3:...print(count**2)...else:...print(count)...count=count+1012316while循環(huán)與選擇結(jié)構(gòu)的組合while循環(huán)與選擇結(jié)構(gòu)的組合應(yīng)用示例代碼如右。如右代碼可知,在while循環(huán)中設(shè)置選擇結(jié)構(gòu),當(dāng)count大于3時,輸出count的平方。1組合選擇結(jié)構(gòu)與循環(huán)結(jié)構(gòu)目錄變量迭代2列表解析3【任務(wù)4-5】使用冒泡排序法排序4【任務(wù)4-6】輸出數(shù)字金字塔5>>>print([x**3forxinrange(6)])#計算x的3次冪[0,1,8,27,64,125]>>>seq=[1,2,3,4,5,6,7,8]>>>print([xforxinseqifx%2])#當(dāng)x除以2余數(shù)為1時取值[1,3,5,7]列表解析示例列表解析也可以稱為列表推導(dǎo)式,是一種高效創(chuàng)建新列表的方式,可以用于動態(tài)創(chuàng)建列表。列表解析示例代碼如下。如上代碼可知,列表解析的形式簡單。>>>print([(i,j)foriinrange(0,3)forjinrange(0,3)])[(0,0),(0,1),(0,2),(1,0),(1,1),(1,2),(2,0),(2,1),(2,2)]>>>print([(i,j)foriinrange(0,3)ifi<1forjinrange(0,3)ifj>1])[(0,2)]使用列表解析實現(xiàn)嵌套循環(huán)語句使用列表解析實現(xiàn)嵌套循環(huán)語句的示例代碼如下。如上代碼可知,列表解析不僅可以運用到嵌套循環(huán)中,而且可以在其中增加條件判斷語句。使用列表解析創(chuàng)建新列表的效率更高,且代碼更加簡潔。1組合選擇結(jié)構(gòu)與循環(huán)結(jié)構(gòu)目錄變量迭代2列表解析3【任務(wù)4-5】使用冒泡排序法排序4【任務(wù)4-6】輸出數(shù)字金字塔5【任務(wù)4-5】使用冒泡排序法排序任務(wù)分析任務(wù)描述使用嵌套循環(huán)、條件語句和循環(huán)語句組合實現(xiàn)冒泡法對數(shù)據(jù)進行排序。(1)創(chuàng)建列表mppx,用于存儲待排序的元素。(2)編寫for循環(huán)與for循環(huán)的嵌套循環(huán),外循環(huán)i的取值為range(len(mppx)),內(nèi)循環(huán)j的取值為range(i+1)。(3)設(shè)置條件語句,當(dāng)列表中的后一個元素比前一個元素小時,將它們的位置互換。(4)輸出冒泡排序后的結(jié)果。1組合選擇結(jié)構(gòu)與循環(huán)結(jié)構(gòu)目錄變量迭代2列表解析3【任務(wù)4-5】使用冒泡排序法排序4【任務(wù)4-6】輸出數(shù)字金字塔5【任務(wù)4-6】輸出數(shù)字金字塔任務(wù)分析任務(wù)描述數(shù)字金字塔由遞增和遞減的數(shù)字序列構(gòu)成,形成獨特的對稱結(jié)構(gòu),每一層

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論