《Python基礎(chǔ)教程(第3版)》全套教學(xué)課件_第1頁(yè)
《Python基礎(chǔ)教程(第3版)》全套教學(xué)課件_第2頁(yè)
《Python基礎(chǔ)教程(第3版)》全套教學(xué)課件_第3頁(yè)
《Python基礎(chǔ)教程(第3版)》全套教學(xué)課件_第4頁(yè)
《Python基礎(chǔ)教程(第3版)》全套教學(xué)課件_第5頁(yè)
已閱讀5頁(yè),還剩816頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

Python程序設(shè)計(jì)全套可編輯PPT課件

第1章Python概述課程描述Python誕生于20世紀(jì)90年代初,是一種解釋型、面向?qū)ο蟆?dòng)態(tài)數(shù)據(jù)類(lèi)型的高級(jí)程序設(shè)計(jì)語(yǔ)言,是最受歡迎的程序設(shè)計(jì)語(yǔ)言之一。本章介紹Python語(yǔ)言的基本情況。本章知識(shí)點(diǎn)1.1初識(shí)Python1.2開(kāi)始Python編程1.3Python文本編輯器IDLE本課件是可編輯的正常PPT課件1.1初識(shí)Python1.1.1什么是Python1.1.2Python的特性本課件是可編輯的正常PPT課件1.1.1什么是PythonPython于20世紀(jì)80年代末由荷蘭人GuidovanRossum(吉多·范羅蘇姆)設(shè)計(jì)實(shí)現(xiàn)。Python的發(fā)展歷史

1991年,VanRossum公布了0.9.0版本的Python源代碼,此版本已經(jīng)實(shí)現(xiàn)了類(lèi)、函數(shù)以及列表、字典和字符串等基本的數(shù)據(jù)類(lèi)型。0.9.0版本還集成了模塊系統(tǒng),VanRossum將模塊描述為Python主要的編程單元。1994年,Python1.0發(fā)布。1.0新增了函數(shù)式工具。2000年,Python2.0發(fā)布。Python2.0集成了列表推導(dǎo)式(Listcomprehension)。Python的發(fā)展歷史2008年,Python3.0發(fā)布。Python3.0也稱(chēng)為Python3000或Python3K。相對(duì)于Python的早期版本,這是一個(gè)較大的升級(jí)。為了不帶入過(guò)多的累贅,Python3.0在設(shè)計(jì)的時(shí)候沒(méi)有考慮向下兼容。Python3.0的主要設(shè)計(jì)思想就是通過(guò)移除傳統(tǒng)的做事方式從而減少特性的重復(fù)。很多針對(duì)早期Python版本設(shè)計(jì)的程序都無(wú)法在Python3.0上正常運(yùn)行。本課件是可編輯的正常PPT課件2024年11月的TIOBE排行榜1.1.2Python的特性(1)簡(jiǎn)單易學(xué)(2)Python是開(kāi)源的、免費(fèi)的(3)Python是高級(jí)語(yǔ)言(4)高可移植性(5)Python是解釋型語(yǔ)言(6)Python全面支持面向?qū)ο蟮某绦蛟O(shè)計(jì)思想(7)高可擴(kuò)展性(8)支持嵌入式編程(9)功能強(qiáng)大的開(kāi)發(fā)庫(kù)本課件是可編輯的正常PPT課件1.2開(kāi)始Python編程1.2.1下載和安裝Python1.2.2執(zhí)行Python腳本文件1.2.3Python語(yǔ)言的基本語(yǔ)法和規(guī)范本課件是可編輯的正常PPT課件1.2.1下載和安裝Python/downloads/本課件是可編輯的正常PPT課件1.2.2執(zhí)行Python腳本文件在shell界面中使用Python語(yǔ)言編寫(xiě)的Hello程序只有一行代碼:print("HelloWorld")第一行的“>>>”是Python語(yǔ)言運(yùn)行環(huán)境的提示符。第二行是Python語(yǔ)句的執(zhí)行結(jié)果。本課件是可編輯的正常PPT課件1.2.3Python語(yǔ)言的基本語(yǔ)法和規(guī)范1.Python語(yǔ)句2.縮進(jìn)3.代碼注釋4.代碼續(xù)行本課件是可編輯的正常PPT課件1.Python語(yǔ)句Python程序由Python語(yǔ)句組成,通常一行編寫(xiě)一個(gè)語(yǔ)句。例如:print('Hello,')print('IamPython')Python語(yǔ)句可以沒(méi)有結(jié)束符,不像C或JAVA那樣在語(yǔ)句后面必須有分號(hào)(;)表示結(jié)束。當(dāng)然,Python程序中也可以根據(jù)習(xí)慣在語(yǔ)句后面使用分號(hào)(;)。也可以把多個(gè)語(yǔ)句寫(xiě)在一行,此時(shí)就要在語(yǔ)句后面加上分號(hào)(;)表示結(jié)束。本課件是可編輯的正常PPT課件【例題】把多個(gè)語(yǔ)句寫(xiě)在一行的例子。print('Hello,');print('IamPython');163本課件是可編輯的正常PPT課件2.縮進(jìn)縮進(jìn)指在代碼行前面添加空格或Tab,這樣做可以使程序更有層次、更有結(jié)構(gòu)感,從而使程序更易讀。縮進(jìn)是Python語(yǔ)言中表明程序框架的唯一手段。在Python程序中,縮進(jìn)不是任意的。平級(jí)的語(yǔ)句行(代碼塊)的縮進(jìn)必須相同。在Python中,1個(gè)縮進(jìn)=4個(gè)空格本課件是可編輯的正常PPT課件【例題】print('Hello,');print('IamPython');運(yùn)行這段程序的結(jié)果如下:unexpectedindent運(yùn)行結(jié)果提示表明縮進(jìn)格式不對(duì)。本課件是可編輯的正常PPT課件3.代碼注釋注釋用于為程序添加說(shuō)明性的文字。Python在運(yùn)行程序時(shí),會(huì)忽略被注釋的內(nèi)容。Python注釋有單行注釋和多行注釋。單行注釋用“#”表示注釋開(kāi)始,“#”之后的內(nèi)容不會(huì)被執(zhí)行。單行注釋可以單獨(dú)占一行,也可放在語(yǔ)句末尾。多行注釋是用三個(gè)英文的單引號(hào)“'''”或三個(gè)雙引號(hào)“"""”作為注釋的開(kāi)始和結(jié)束符號(hào)。本課件是可編輯的正常PPT課件3.代碼注釋本課件是可編輯的正常PPT課件4.代碼續(xù)行通常,Python中的一條語(yǔ)句占一行,沒(méi)有類(lèi)似于C和Java中的分號(hào)等語(yǔ)句結(jié)束符號(hào)。在遇到較長(zhǎng)的語(yǔ)句時(shí),可使用語(yǔ)句續(xù)行符號(hào),將一條語(yǔ)句寫(xiě)在多行之中。Python有兩種續(xù)行方式。一種是使用“\”符號(hào)。應(yīng)注意在“\”符號(hào)之后不能有任何其他符號(hào),包括空格和注釋。本課件是可編輯的正常PPT課件4.代碼續(xù)行另一種特殊情況下的續(xù)行方式是在使用括號(hào)(包括圓括號(hào)()、方括號(hào)[]和大括號(hào){}等)時(shí),括號(hào)中的內(nèi)容可分多行書(shū)寫(xiě),括號(hào)中的空白和換行符都會(huì)被忽略。本課件是可編輯的正常PPT課件1.3Python文本編輯器IDLE1.3.1打開(kāi)IDLE1.3.2新建Python腳本1.3.3保存Python腳本1.3.4打開(kāi)Python腳本1.3.5語(yǔ)法高亮1.3.6自動(dòng)完成1.3.7語(yǔ)法提示1.3.8運(yùn)行Python程序本課件是可編輯的正常PPT課件1.3.1打開(kāi)IDLE可以在開(kāi)始菜單的所有程序中,選擇Python3.x分組下面的IDLE(Python3.x64bit)菜單項(xiàng),打開(kāi)IDLE窗口。1.3.2新建Python腳本在菜單里依次選擇File/NewFile(或按下Ctrl+N)即可新建Python腳本,窗口標(biāo)題顯示腳本名稱(chēng),初始時(shí)為Untitled,也就是還沒(méi)有保存Python腳本。本課件是可編輯的正常PPT課件1.3.3保存Python腳本在菜單里依次選擇File/SaveFile(或按下Ctrl+S)即可保存Python腳本。如果是第一次保存,則會(huì)彈出保存文件對(duì)話框,要求用戶輸入保存的文件名。本課件是可編輯的正常PPT課件1.3.4打開(kāi)Python腳本在菜單里依次選擇File/OpenFile(或按下Ctrl+O)會(huì)彈出打開(kāi)文件對(duì)話框,要求用戶選擇要打開(kāi)的.py文件名。也可以右擊.py文件,在快捷菜單中選擇EditwithIDLE,即可直接打開(kāi)IDLE窗口編輯該腳本。本課件是可編輯的正常PPT課件1.3.5語(yǔ)法高亮IDLE支持Python的語(yǔ)法高亮,也就是說(shuō)能夠以彩色標(biāo)識(shí)出Python語(yǔ)言的關(guān)鍵字,告訴開(kāi)發(fā)人員這個(gè)詞的特殊作用。例如,在IDLE查看例1-1,注釋顯示為紅色,print顯示為紫色,字符串顯示為綠色。本課件是可編輯的正常PPT課件1.3.6自動(dòng)完成自動(dòng)完成指用戶在輸入單詞的開(kāi)頭部分后IDLE可以根據(jù)語(yǔ)法或上下文自動(dòng)完成后面的部分。依次選擇Edit/ExpandWord菜單項(xiàng),或者按下“Alt+/”組合鍵,即可實(shí)現(xiàn)自動(dòng)完成。例如,輸入pr后按下“Alt+/”組合鍵即可自動(dòng)完成print。也可以輸入Python保留字(常量名或函數(shù)名等)的開(kāi)頭在菜單里依次選擇Edit/ShowCompletions(或按下“Ctrl+空格”),彈出提示框。不過(guò)“Ctrl+空格”與切換輸入法的功能鍵沖突。例如,輸入p然后選擇Edit/ShowCompletions。本課件是可編輯的正常PPT課件1.3.7語(yǔ)法提示IDLE還可以顯示語(yǔ)法提示幫助程序員完成輸入,例如輸入“print(”,IDLE會(huì)彈出一個(gè)語(yǔ)法提示框,顯示print()函數(shù)的語(yǔ)法。本課件是可編輯的正常PPT課件1.3.8運(yùn)行Python程序在菜單里依次選擇Run/RunModule(或按下F5)可以在IDLE中運(yùn)行當(dāng)前的Python程序。本課件是可編輯的正常PPT課件語(yǔ)法錯(cuò)誤如果程序中有語(yǔ)法錯(cuò)誤,運(yùn)行時(shí)會(huì)彈出一個(gè)invalidsyntax。然后一個(gè)淺紅色方塊定位在錯(cuò)誤處。例如,運(yùn)行下面的程序:

print(,'Hello,')

在print()函數(shù)中多了一

個(gè)逗號(hào)。本課件是可編輯的正常PPT課件Python程序設(shè)計(jì)第2章程序基礎(chǔ)語(yǔ)法課程描述本章將介紹Python程序基礎(chǔ)語(yǔ)法,包括輸入輸出函數(shù)、常量、變量、數(shù)據(jù)類(lèi)型、運(yùn)算符等內(nèi)容,為使用Python開(kāi)發(fā)應(yīng)用程序奠定基礎(chǔ)。本章知識(shí)點(diǎn)2.1輸入與輸出2.2保留字與標(biāo)識(shí)符2.3常量和變量2.4運(yùn)算符與表達(dá)式本課件是可編輯的正常PPT課件在Python中,輸入輸出(I/O)操作是用戶與程序交互的基礎(chǔ)。2.1輸入與輸出本課件是可編輯的正常PPT課件1.輸入字符串在Python中,使用input()函數(shù)輸入字符串操作的語(yǔ)法如下:其中,變量和提示字符串均可省略。input()函數(shù)將用戶輸入以字符串返回。用戶按【Enter】鍵完成輸入,【Enter】鍵之前的全部字符均作為輸入內(nèi)容。2.1.1輸入數(shù)據(jù)本課件是可編輯的正常PPT課件【例題】使用input()函數(shù)接受用戶輸入的數(shù)據(jù)name=input("請(qǐng)輸入您的姓名:")print("=================")print("您好",name)程序使用input()函數(shù)提示用戶輸入姓名,并將用戶輸入的姓名字符串賦值給變量name,最后打印輸出。本課件是可編輯的正常PPT課件如果需要輸入整數(shù)或小數(shù),則需要使用int()或float()函數(shù)進(jìn)行轉(zhuǎn)換。例題:a=int(input("請(qǐng)輸入一個(gè)整數(shù):"))sum=a+1print(sum)

2.輸入整數(shù)或小數(shù)本課件是可編輯的正常PPT課件在Python中,eval()函數(shù)和input()函數(shù)經(jīng)常一起使用。eval(“字符串”)將輸入的字符串轉(zhuǎn)變?yōu)镻ython語(yǔ)句,并執(zhí)行該語(yǔ)句。簡(jiǎn)單來(lái)理解,eval()函數(shù)將字符串當(dāng)成有效的表達(dá)式來(lái)求值并返回計(jì)算結(jié)果。3.輸入內(nèi)容轉(zhuǎn)變?yōu)橛行П磉_(dá)式本課件是可編輯的正常PPT課件【例題】eval()函數(shù)與input()函數(shù)的嵌套使用a=eval(input("請(qǐng)輸入一個(gè)數(shù):"))sum=a+1print(sum)程序使用input()函數(shù)提示用戶輸入一個(gè)數(shù),由于input()函數(shù)將用戶輸入以字符串返回,所以在input()函數(shù)的外面嵌套一個(gè)eval()函數(shù),將輸入的數(shù)據(jù)作為有效表達(dá)式處理。在本例中,首先輸入整數(shù)“1”,然后使用eval()函數(shù)將變量a轉(zhuǎn)換為能夠加上1的有效計(jì)算表達(dá)式,計(jì)算結(jié)果為2,結(jié)果賦值給變量sum。最后使用print()函數(shù)輸出變量sum。本課件是可編輯的正常PPT課件【例題】eval()函數(shù)與input()函數(shù)的嵌套使用如果在本例中,首先輸入整數(shù)“1.1”,eval()函數(shù)會(huì)將變量a轉(zhuǎn)換為能夠加上1的有效計(jì)算表達(dá)式,計(jì)算結(jié)果為2.1,結(jié)果賦值給變量sum。最后使用print()函數(shù)輸出變量sum。本課件是可編輯的正常PPT課件在Python中可以使用print()函數(shù)完成輸出操作。print()函數(shù)的語(yǔ)法如下:print(objects,sep='',end='\n',file=sys.stdout,flush=False)objects?:表示要打印的對(duì)象,可以是一個(gè)或多個(gè)對(duì)象。如果輸出多個(gè)對(duì)象,需要用逗號(hào)分隔。?sep?:用于指定多個(gè)對(duì)象之間的分隔符,默認(rèn)為空格??梢栽O(shè)置為其他字符,如逗號(hào)、制表符等。?end?:用于指定打印結(jié)束時(shí)的字符,默認(rèn)為換行符\n??梢栽O(shè)置為其他字符,如空格、感嘆號(hào)等。?file?:指定輸出的文件對(duì)象,默認(rèn)為標(biāo)準(zhǔn)輸出sys.stdout。如果指定了文件對(duì)象,輸出將寫(xiě)入該文件而不是標(biāo)準(zhǔn)輸出。?flush?:從Python3.3開(kāi)始引入,用于指定在每次調(diào)用后是否立即刷新輸出緩沖區(qū),默認(rèn)為False。注意:print()函數(shù)的所有參數(shù)都可以省略。無(wú)參數(shù)時(shí),print()函數(shù)輸出一個(gè)空行。2.1.2輸出數(shù)據(jù)本課件是可編輯的正常PPT課件【例題】輸出一個(gè)或多個(gè)對(duì)象print(123)print(123,'abc',45,'book')運(yùn)行結(jié)果如下:123123abc45book本課件是可編輯的正常PPT課件【例題】使用sep參數(shù)指定輸出分隔符print(123,'abc',45,'book',sep='#')運(yùn)行結(jié)果如下:123#abc#45#book本課件是可編輯的正常PPT課件【例題】使用end參數(shù)指定輸出結(jié)尾符號(hào)print("price");print(100)#每執(zhí)行一次print()函數(shù),默認(rèn)輸出換行符\nprint("price",end="=");print(100)運(yùn)行結(jié)果如下:price100price=100本課件是可編輯的正常PPT課件(1)格式化輸出字符串在輸出字符串時(shí),可以以%s作為參數(shù),代表后面指定要輸出的字符串。具體用法如下:print("…%s…"%(string))輸出時(shí),字符串string會(huì)出現(xiàn)在%s的位置。2.格式化輸出本課件是可編輯的正常PPT課件【例題】以格式化參數(shù)的形式輸出字符串name="Python"print("您好,%s!"%(name))運(yùn)行結(jié)果如下:您好,Python!本課件是可編輯的正常PPT課件print()函數(shù)的參數(shù)列表可以有多個(gè)參數(shù),格式如下:print("…%s…%s…"%(string1,string2,…,stringn))輸出時(shí)string1,string2,…,stringn會(huì)出現(xiàn)在對(duì)應(yīng)的%s位置。(1)格式化輸出字符串本課件是可編輯的正常PPT課件【例題】在print()函數(shù)中使用多個(gè)參數(shù)yourname="小李"myname="小張"print("您好,%s!我是%s。"%(yourname,myname))運(yùn)行結(jié)果如下:您好,小李!我是小張。本課件是可編輯的正常PPT課件print()函數(shù)支持以格式化參數(shù)的形式輸出整數(shù),方法如下:print("…%d…%d…"%(整數(shù)1,整數(shù)2,…,整數(shù)n))輸出時(shí)整數(shù)1,整數(shù)2,…,整數(shù)n會(huì)出現(xiàn)在對(duì)應(yīng)的%d位置。(2)格式化輸出整數(shù)本課件是可編輯的正常PPT課件【例題】使用print()函數(shù)格式化輸出整數(shù)i=1j=2print("%d+%d=%d"%(i,j,i+j))運(yùn)行結(jié)果如下:1+2=3本課件是可編輯的正常PPT課件在print()函數(shù)的格式化參數(shù)中,%s和%d可以同時(shí)使用。例題:strHello='HelloWorld'print("thelengthof(%s)is%d"%(strHello,len(strHello)))運(yùn)行結(jié)果如下:thelengthof(HelloWorld)is11(2)格式化輸出整數(shù)本課件是可編輯的正常PPT課件%d用于輸出十進(jìn)制整數(shù)。在格式化參數(shù)中可以指定輸出十六進(jìn)制和八進(jìn)制整數(shù)。具體方法如下:%x,用于輸出十六進(jìn)制整數(shù);%o,用于輸出八進(jìn)制整數(shù)。(2)格式化輸出整數(shù)本課件是可編輯的正常PPT課件【例題】輸出255對(duì)應(yīng)的十六進(jìn)制和八進(jìn)制整數(shù)print("255對(duì)應(yīng)的十六進(jìn)制整數(shù)是%x,對(duì)應(yīng)的八進(jìn)制整數(shù)是%o"%(255,255))運(yùn)行結(jié)果如下:255對(duì)應(yīng)的十六進(jìn)制整數(shù)是ff,對(duì)應(yīng)的八進(jìn)制整數(shù)是377本課件是可編輯的正常PPT課件在print()函數(shù)的格式化參數(shù)中,使用%f輸出浮點(diǎn)數(shù)。例題:print("100.0/3=%f"%(100.0/3))運(yùn)行結(jié)果如下:100.0/3=33.333333(3)格式化輸出浮點(diǎn)數(shù)本課件是可編輯的正常PPT課件在%f中還可以指定浮點(diǎn)數(shù)輸出時(shí)的總長(zhǎng)度和小數(shù)部分位數(shù),格式如下:%總長(zhǎng)度.小數(shù)部分位數(shù)f浮點(diǎn)數(shù)的總長(zhǎng)度包括整數(shù)部分、小數(shù)點(diǎn)和小數(shù)部分的長(zhǎng)度之和。如果整數(shù)部分、小數(shù)點(diǎn)和小數(shù)部分的長(zhǎng)度之和小于指定的總長(zhǎng)度,則輸出時(shí)內(nèi)容靠右對(duì)齊,會(huì)在浮點(diǎn)數(shù)前面以空格補(bǔ)齊。(3)格式化輸出浮點(diǎn)數(shù)本課件是可編輯的正常PPT課件【例題】輸出100除以3的值,總長(zhǎng)度為10,小數(shù)部分位數(shù)為3print("100.0/3=%10.3f"%(100.0/3))運(yùn)行結(jié)果如下:100.0/3=33.333因?yàn)?3.333的長(zhǎng)度不足10,所以在輸出時(shí)前面補(bǔ)了4個(gè)空格。本課件是可編輯的正常PPT課件如果在總長(zhǎng)度前面加個(gè)“-”號(hào),則表示輸出的內(nèi)容靠左對(duì)齊。例題:print("100.0/3=%-10.3f"%(100.0/3))運(yùn)行結(jié)果如下:100.0/3=33.33333.333的長(zhǎng)度不足10,在輸出時(shí)后面會(huì)有4個(gè)空格。(3)格式化輸出浮點(diǎn)數(shù)本課件是可編輯的正常PPT課件在print()函數(shù)的格式化參數(shù)中,使用%e輸出指數(shù),即以科學(xué)計(jì)數(shù)法形式輸出。默認(rèn)情況下,數(shù)字部分的小數(shù)位數(shù)為6位,指數(shù)部分占4位(如e+02)。(4)格式化輸出指數(shù)本課件是可編輯的正常PPT課件【例題】使用print()函數(shù)輸出12345678的指數(shù)形式a=12345678print('a的值為:%e'%a)print('a的值為:%.3e'%a)運(yùn)行結(jié)果如下:a的值為:1.234568e+07a的值為:1.235e+07本課件是可編輯的正常PPT課件Python中的內(nèi)置函數(shù)format()主要是用來(lái)格式化字符串。format()函數(shù)用法相對(duì)基本格式化輸出采用“%”的方法,把字符串當(dāng)成一個(gè)模板,通過(guò)傳入的參數(shù)進(jìn)行格式化,并且使用大括號(hào)“{}”作為特殊字符代替“%”。在Python中,format()函數(shù)用于創(chuàng)建帶有占位符的字符串模板,并將指定的值填充到占位符中。這樣可以根據(jù)不同的情形動(dòng)態(tài)地構(gòu)建字符串,使輸出更具可讀性和可定制性。3.format()函數(shù)本課件是可編輯的正常PPT課件在字符串中把需要輸出的變量值用{}來(lái)代替,然后用format()來(lái)修改使之成為想要的字符串,位置參數(shù)就是把傳統(tǒng)的%改為{},按照位置順序自動(dòng)進(jìn)行替換。如果占位符{}為空(沒(méi)有表示順序的序號(hào)),將會(huì)按照參數(shù)出現(xiàn)的先后次序進(jìn)行匹配。例題:print('Mynameis:{},age:{}'.format('TOM',18))Mynameis:TOM,age:18(1)使用位置參數(shù)(占位符)本課件是可編輯的正常PPT課件如果占位符{}指定了參數(shù)的序號(hào),則會(huì)按照序號(hào)替換對(duì)應(yīng)參數(shù)。例題:print('Mynameis:{1},age:{0}'.format(18,'TOM'))Mynameis:TOM,age:18(1)使用位置參數(shù)(占位符)本課件是可編輯的正常PPT課件格式化說(shuō)明符指定了如何格式化值,它們緊跟在占位符之后,并用冒號(hào):分隔。(2)格式化說(shuō)明符s字符串d整型f浮點(diǎn)型%百分比本課件是可編輯的正常PPT課件例題:print('{:.4f}'.format(1/3))0.3333print('{:.2%}'.format(0.91234))91.23%(2)格式化說(shuō)明符本課件是可編輯的正常PPT課件對(duì)齊符號(hào)之前為空白處填充的字符(默認(rèn)填充空格),對(duì)齊符號(hào)之后為寬度。例題:print('左對(duì)齊{:#<8}'.format(100))左對(duì)齊100#####(3)對(duì)齊方式與字符寬度設(shè)置左對(duì)齊<

右對(duì)齊(默認(rèn))>

居中對(duì)齊

^本課件是可編輯的正常PPT課件使用key=value來(lái)實(shí)現(xiàn)一一對(duì)應(yīng)的賦值替換。例題:print('Mynameis:{name},age:{age}'.format(name='TOM',age=18))Mynameis:TOM,age:18(4)使用關(guān)鍵字參數(shù)本課件是可編輯的正常PPT課件例題:print('18的二進(jìn)制:{:b}'.format(18))print('18的八進(jìn)制:{:o}'.format(18))print('18的十六進(jìn)制:{:x}'.format(18))18的二進(jìn)制:1001018的八進(jìn)制:2218的十六進(jìn)制:12(5)數(shù)字的進(jìn)制輸出二進(jìn)制b八進(jìn)制o十進(jìn)制(默認(rèn))d十六進(jìn)制x本課件是可編輯的正常PPT課件例題:用戶通過(guò)鍵盤(pán)輸入一個(gè)數(shù)字,對(duì)該數(shù)字以30字符寬度,16進(jìn)制,居中輸出,多余字符采用雙引號(hào)(")填充。s=input("請(qǐng)輸入一個(gè)數(shù)字:")print("{:\"^30x}".format(eval(s)))(5)數(shù)字的進(jìn)制輸出本課件是可編輯的正常PPT課件格式:{:,}例題:print('{:,}'.format(19012390123))19,012,390,123(6)數(shù)字的千分位劃分輸出本課件是可編輯的正常PPT課件格式:{:e}例題:print('{:e}'.format(19012390123))1.901239e+10print('{:.2e}'.format(19012390123))1.90e+10(7)指數(shù)形式輸出本課件是可編輯的正常PPT課件例題:person=['TOM',18]print('Iam{0[0]},age:{0[1]}'.format(person))x=[12,13]print('Iam{0[0]},age:{1[1]}'.format(person,x))IamTOM,age:18IamTOM,age:13教材內(nèi)容補(bǔ)充:(8)通過(guò)下標(biāo)來(lái)實(shí)現(xiàn)格式化本課件是可編輯的正常PPT課件2.2保留字與標(biāo)識(shí)符2.2.1保留字2.2.2標(biāo)識(shí)符本課件是可編輯的正常PPT課件2.2.1保留字保留字是Python中已經(jīng)被賦予特定意義的一些單詞,開(kāi)發(fā)程序時(shí),不可以作為變量、函數(shù)、類(lèi)、模塊和其他對(duì)象的名稱(chēng)來(lái)使用。andasassertbreakclasscontinuedefdelelifelseexceptfinallyforfromFalseglobalifimportinislambdanonlocalnotNoneorpassraisereturntryTruewhilewithyield

注意:Python中所有保留字是區(qū)分字母大小寫(xiě)的。例如:if是保留字,但是IF就不是保留字。2.2.2標(biāo)識(shí)符標(biāo)識(shí)符可以簡(jiǎn)單的理解為一個(gè)名字,它主要用來(lái)標(biāo)識(shí)變量、函數(shù)、類(lèi)、模塊和其他對(duì)象的名稱(chēng)。2.2.2標(biāo)識(shí)符Python的標(biāo)識(shí)符命名規(guī)則如下:標(biāo)識(shí)符名字的第1個(gè)字符必須是字母或下劃線(_)。標(biāo)識(shí)符名字的第1個(gè)字符后面可以由字母、下劃線(_)或數(shù)字(0~9)組成。不能使用Python中的保留字。Python對(duì)大小寫(xiě)敏感,保留字和各種自定義標(biāo)識(shí)符(如變量名、函數(shù)名等)在使用時(shí)區(qū)分大小寫(xiě)。2.2.2標(biāo)識(shí)符下面的代碼說(shuō)明了abc和Abc是兩個(gè)不同的變量:2.2.2標(biāo)識(shí)符Python標(biāo)識(shí)符的相關(guān)說(shuō)明:Python的標(biāo)識(shí)符中不能包含空格、@、%和$等特殊字符。Python中允許使用漢字作為標(biāo)識(shí)符,但建議盡量不要使用漢字作為標(biāo)識(shí)符。例如,_score、Number、_score和number123是有效的變量名;而123number(以數(shù)字開(kāi)頭)、myscore(變量名包含空格)和my-score(變量名包含減號(hào)(-))不是有效的變量名。2.3常量和變量2.3.1常量2.3.2變量2.3.3數(shù)據(jù)類(lèi)型轉(zhuǎn)換本課件是可編輯的正常PPT課件2.3.1常量常量是內(nèi)存中用于保存固定值的單元,在程序中常量的值不能發(fā)生改變。Python中沒(méi)有專(zhuān)門(mén)定義常量的方式,也就是說(shuō)不能像C語(yǔ)言那樣給常量起一個(gè)名字。Python常量包括數(shù)字、字符串、布爾值和空值等。例如,數(shù)字7和‘a(chǎn)bc’都是常量。1.?dāng)?shù)字Python包括整數(shù)、浮點(diǎn)數(shù)和復(fù)數(shù)3種類(lèi)型的數(shù)字。本課件是可編輯的正常PPT課件(1)整數(shù)表示不包含小數(shù)點(diǎn)的實(shí)數(shù)。例如,1、-1、1009、-209都是整數(shù)。本課件是可編輯的正常PPT課件(2)浮點(diǎn)數(shù)包含小數(shù)點(diǎn)的浮點(diǎn)型數(shù)字。本課件是可編輯的正常PPT課件(3)復(fù)數(shù)可以用a+bi表示的數(shù)字。a和b是實(shí)數(shù),i是虛數(shù)單位。虛數(shù)單位是二次方程式x2+1=0的一個(gè)解,所以虛數(shù)單位同樣可以表示為。在復(fù)數(shù)a+bi中,a稱(chēng)為復(fù)數(shù)的實(shí)部,b稱(chēng)為復(fù)數(shù)的虛部。一個(gè)復(fù)數(shù)可以表示為一對(duì)數(shù)字(a,b)。使用矢量圖描述復(fù)數(shù)如圖2-5所示。Re是實(shí)軸,Im是虛軸。本課件是可編輯的正常PPT課件使用矢量圖描述復(fù)數(shù)本課件是可編輯的正常PPT課件2.字符串字符串是一個(gè)由字符組成的序列。字符串常量使用單引號(hào)(')或雙引號(hào)(")括起來(lái)。例如:'我是一個(gè)字符串'"我是另一個(gè)字符串"本課件是可編輯的正常PPT課件轉(zhuǎn)義字符轉(zhuǎn)義字符具體描述\n換行\(zhòng)r回車(chē)\’

\""\\\\(在行尾時(shí))續(xù)行符\a響鈴\b退格(Backspace)\000空\(chéng)v縱向制表符\t橫向制表符當(dāng)需要在字符串中使用特殊字符時(shí),Python使用反斜杠(\)作為轉(zhuǎn)義字符。本課件是可編輯的正常PPT課件3.布爾值布爾值通常用來(lái)判斷條件是否成立。Python包含兩個(gè)布爾值,包含True(邏輯真)和False(邏輯假)。布爾值區(qū)分大小寫(xiě),也就是說(shuō)true和TRUE不能等同于True。本課件是可編輯的正常PPT課件4.空值Python有一個(gè)特殊的空值常量None。與0和空字符串("")不同,None表示什么都沒(méi)有。None與任何其他的數(shù)據(jù)類(lèi)型比較永遠(yuǎn)都返回False。本課件是可編輯的正常PPT課件2.3.2變量變量是內(nèi)存中命名的存儲(chǔ)位置,與常量不同的是變量的值可以動(dòng)態(tài)變化。Python變量的數(shù)據(jù)類(lèi)型Python中數(shù)據(jù)類(lèi)型與C語(yǔ)言不同,C語(yǔ)言中數(shù)據(jù)類(lèi)型是需要在程序編譯開(kāi)始時(shí)聲明變量類(lèi)型,像C語(yǔ)言這樣在編譯期間就確定數(shù)據(jù)類(lèi)型,要求在使用任一變量之前聲明其數(shù)據(jù)類(lèi)型的語(yǔ)言叫做靜態(tài)類(lèi)型語(yǔ)言,Java也如此。而Python則是一種動(dòng)態(tài)類(lèi)型語(yǔ)言,這種類(lèi)型語(yǔ)言確定變量的數(shù)據(jù)類(lèi)型是在給變量賦值的時(shí)候。因此在Python中使用變量時(shí)不用像C語(yǔ)言先聲明數(shù)據(jù)類(lèi)型,可直接使用?!纠}】定義字符串變量a、數(shù)值變量b和布爾類(lèi)型變量c

在下面的代碼中,定義了一個(gè)字符串變量a、數(shù)值變量b和布爾類(lèi)型變量c。a="這是一個(gè)常量"b=2c=True在程序編寫(xiě)時(shí),也可以將變量賦值給另外一個(gè)變量,例如:a="這是一個(gè)常量"b=a此代碼將變量a的值賦給變量b,但以后對(duì)變量a的操作將不會(huì)影響到變量b。每個(gè)變量都對(duì)應(yīng)著一塊內(nèi)存空間,因此每個(gè)變量都有一個(gè)內(nèi)存地址。變量賦值實(shí)際就是將該變量的地址指向賦值給它的常量或變量的地址。也說(shuō)是說(shuō),變量a只是將它的值傳遞給了變量b。將變量賦值給另外一個(gè)變量本課件是可編輯的正常PPT課件【例題】變量值傳遞a="這是一個(gè)變量"b=a#此時(shí)變量b的值應(yīng)等于變量a的值print(b)a="這是另一個(gè)變量"print(b)#對(duì)變量a的操作將不會(huì)影響到變量b運(yùn)行結(jié)果如下:這是一個(gè)變量這是一個(gè)變量本課件是可編輯的正常PPT課件變量賦值過(guò)程的示意圖id()函數(shù)可以使用id()函數(shù)輸出變量的地址,語(yǔ)法如下:id(變量名)【例題】用id()函數(shù)輸出變量地址的示例程序。str1="這是一個(gè)變量"print("變量str1的值是:"+str1)#“+”為連接字符串print("變量str1的地址是:%d"%(id(str1)))#“%”標(biāo)記轉(zhuǎn)換說(shuō)明符的開(kāi)始str2=str1print("變量str2的值是:"+str2)print("變量str2的地址是:%d"%(id(str2)))str1="這是另一個(gè)變量"print("變量str1的值是:"+str1)print("變量str1的地址是:%d"%(id(str1)))print("變量str2的值是:"+str2)print("變量str2的地址是:%d"%(id(str2)))本課件是可編輯的正常PPT課件id()函數(shù)程序首先定義了一個(gè)變量str1,將它賦值為"這是一個(gè)變量";將變量str1的地址傳遞給變量str2;再修改變量str1的值為"這是另一個(gè)變量",在每次賦值后分別打印變量str1和str2的值。運(yùn)行結(jié)果如下:變量str1的值是:這是一個(gè)變量變量str1的地址是:58752208變量str2的值是:這是一個(gè)變量變量str2的地址是:58752208變量str1的值是:這是另一個(gè)變量變量str1的地址是:58752264變量str2的值是:這是一個(gè)變量變量str2的地址是:58752208執(zhí)行str2=str1語(yǔ)句后,變量str2的地址與變量str1的地址相同(58752208)。對(duì)變量str1賦值后,變量str1的地址變成58752264,此時(shí)變量str2的地址依然是58752208。本課件是可編輯的正常PPT課件2.3.3數(shù)據(jù)類(lèi)型轉(zhuǎn)換Python在定義變量時(shí),不需要指定其數(shù)據(jù)類(lèi)型,而是根據(jù)每次給變量所賦的值決定其數(shù)據(jù)類(lèi)型。但也可以使用函數(shù)對(duì)常量和變量進(jìn)行類(lèi)型轉(zhuǎn)換,以便對(duì)它們進(jìn)行相應(yīng)的操作。本課件是可編輯的正常PPT課件1.轉(zhuǎn)換為數(shù)字可以將字符串常量或變量轉(zhuǎn)換為數(shù)字。(1)使用int()函數(shù)將數(shù)字或字符串轉(zhuǎn)換為整數(shù)(10進(jìn)制表示),語(yǔ)法如下:int(x[,base])參數(shù)x是待轉(zhuǎn)換的數(shù)字或字符串;參數(shù)base為可選參數(shù),為參數(shù)x的進(jìn)制,默認(rèn)為10進(jìn)制。注意:①x可以是數(shù)字或字符串,但是base被賦值后x只能是字符串。②x作為字符串時(shí)必須是base類(lèi)型,也就是說(shuō)x變成數(shù)字時(shí)必須能用base進(jìn)制表示。本課件是可編輯的正常PPT課件1.轉(zhuǎn)換為數(shù)字例題:int(3.14)#3

int(100,2)#出錯(cuò),base被賦值后函數(shù)只接收字符串int('23',16)#35int('Pythontab',8)#出錯(cuò),Pythontab不是8進(jìn)制數(shù)本課件是可編輯的正常PPT課件1.轉(zhuǎn)換為數(shù)字(2)使用float()函數(shù)將字符串或數(shù)字轉(zhuǎn)換為浮點(diǎn)數(shù),語(yǔ)法如下:float(x)參數(shù)x是待轉(zhuǎn)換的字符串或數(shù)字。(3)使用eval()函數(shù)計(jì)算字符串中的有效Python表達(dá)式,并返回結(jié)果,語(yǔ)法如下:eval(str)參數(shù)str是待計(jì)算的Python表達(dá)式字符串。本課件是可編輯的正常PPT課件【例題】a="1"b=int(a)+1print(b)運(yùn)行結(jié)果為2。本課件是可編輯的正常PPT課件【例題】a="1+2"print(eval(a))運(yùn)行結(jié)果為3。思考:a="1+2"print(a)本課件是可編輯的正常PPT課件2.轉(zhuǎn)換為字符串可以將數(shù)字常量或變量轉(zhuǎn)換為字符串。(1)使用str()函數(shù)將數(shù)值轉(zhuǎn)換為字符串,語(yǔ)法如下:str(x)參數(shù)x是待轉(zhuǎn)換的數(shù)值。本課件是可編輯的正常PPT課件2.轉(zhuǎn)換為字符串(2)使用repr()函數(shù)將對(duì)象轉(zhuǎn)換為字符串顯示,語(yǔ)法如下:repr(obj)參數(shù)obj是待轉(zhuǎn)換的對(duì)象。例題:print(repr('hello'))'hello'本課件是可編輯的正常PPT課件2.轉(zhuǎn)換為字符串(3)使用chr()函數(shù)將一個(gè)整數(shù)轉(zhuǎn)換為對(duì)應(yīng)ASCII的字符,語(yǔ)法如下:chr(整數(shù))(4)使用ord()函數(shù)將一個(gè)字符轉(zhuǎn)換為對(duì)應(yīng)的ASCII,語(yǔ)法如下:ord(字符)

本課件是可編輯的正常PPT課件【例題】使用chr()函數(shù)和ord()函數(shù)的例子print(chr(65))print(ord('A'))運(yùn)行結(jié)果為:A65本課件是可編輯的正常PPT課件2.轉(zhuǎn)換為字符串(5)使用hex()函數(shù)將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)十六進(jìn)制字符串,語(yǔ)法如下:hex(整數(shù))(6)使用oct()函數(shù)將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)八進(jìn)制字符串,語(yǔ)法如下:oct(整數(shù))本課件是可編輯的正常PPT課件【例題】打印8的十六進(jìn)制字符串和八進(jìn)制字符串使用hex()函數(shù)和oct()函數(shù)打印8的十六進(jìn)制字符串和八進(jìn)制字符串。print(hex(8))print(oct(8))輸出的結(jié)果如下:0x80o10十六進(jìn)制字符串以0x開(kāi)頭,八進(jìn)制字符串以0o開(kāi)頭。本課件是可編輯的正常PPT課件2.4運(yùn)算符與表達(dá)式運(yùn)算符是程序設(shè)計(jì)語(yǔ)言的最基本元素,它是構(gòu)成表達(dá)式的基礎(chǔ)。本課件是可編輯的正常PPT課件2.4.1運(yùn)算符Python支持算術(shù)運(yùn)算符、賦值運(yùn)算符、位運(yùn)算符、比較運(yùn)算符、邏輯運(yùn)算符、字符串運(yùn)算符、成員運(yùn)算符和身份運(yùn)算符等基本運(yùn)算符。本課件是可編輯的正常PPT課件1.算術(shù)運(yùn)算符算術(shù)運(yùn)算符具體描述例

子+加法運(yùn)算1+2的結(jié)果是3-減法運(yùn)算100-1的結(jié)果是99*乘法運(yùn)算2*2的結(jié)果是4/除法運(yùn)算(結(jié)果是浮點(diǎn)數(shù)。如不能整除,Python3默認(rèn)的是提供17位數(shù)字的精度)4/2的結(jié)果是2.0%求余運(yùn)算10%3的結(jié)果是1**冪運(yùn)算。x**y返回x的y次冪2**3的結(jié)果是8//整除運(yùn)算,即返回商的整數(shù)部分9//2的結(jié)果是4

本課件是可編輯的正常PPT課件2.賦值運(yùn)算符賦值運(yùn)算符具體描述例

子=直接賦值x=3;將3賦值到變量x中+=加法賦值x+=3;等同于x=x+3-=減法賦值x-=3;等同于x=x-3*=乘法賦值x*=3;等同于x=x*3/=除法賦值x/=3;等同于x=x/3%=取余數(shù)賦值x%=3;等同于x=x%3**=冪賦值x**=3;等同于x=x**3//=整除賦值x//=3;等同于x=x//3本課件是可編輯的正常PPT課件【例題】賦值運(yùn)算符的使用實(shí)例x=3x+=3print(x)x-=3print(x)x*=3print(x)x/=3print(x)運(yùn)行結(jié)果如下:6393.0本課件是可編輯的正常PPT課件3.位運(yùn)算符位運(yùn)算符具體描述&按位與運(yùn)算,運(yùn)算符查看兩個(gè)表達(dá)式的二進(jìn)制表示法的值,并執(zhí)行按位“與”操作。只要兩個(gè)表達(dá)式的某位都為1,則結(jié)果的該位為1;否則,結(jié)果的該位為0(同1為1)|按位或運(yùn)算,運(yùn)算符查看兩個(gè)表達(dá)式的二進(jìn)制表示法的值,并執(zhí)行按位“或”操作。只要兩個(gè)表達(dá)式的某位有一個(gè)為1,則結(jié)果的該位為1;否則,結(jié)果的該位為0(同0為0)^按位異或運(yùn)算。異或的運(yùn)算法則為:0異或0=0,1異或0=1,0異或1=1,1異或1=0~按位非運(yùn)算。0取非運(yùn)算的結(jié)果為1;1取非運(yùn)算的結(jié)果為0<<

位左移運(yùn)算,即所有位向左移(移出位被丟棄,右邊的空位一律補(bǔ)0)>>

位右移運(yùn)算,即所有位向右移(移出位被丟棄,左邊移出的空位或者一律補(bǔ)0,或者補(bǔ)符號(hào)位)【例題】位運(yùn)算符的使用實(shí)例x=8a=x>>3print(a)b=x<<3print(b)c=x>>5print(c)運(yùn)行結(jié)果如下:1640本課件是可編輯的正常PPT課件4.比較運(yùn)算符比較運(yùn)算符具體描述==等于運(yùn)算符(兩個(gè)=)。例如

a==b,若a等于b,則返回True;否則返回False!=不等運(yùn)算符。例如

a!=b,若a不等于b,則返回True;否則返回False<>

不等運(yùn)算符,與!=相同<

小于運(yùn)算符>

大于運(yùn)算符<=小于等于運(yùn)算符>=大于等于運(yùn)算符本課件是可編輯的正常PPT課件5.邏輯運(yùn)算符邏輯運(yùn)算符具體描述and邏輯與運(yùn)算符。例如

aandb,當(dāng)a和b都為T(mén)rue時(shí)等于True;否則等于False(同真為真)or邏輯或運(yùn)算符。例如

aorb,當(dāng)a和b至少有一個(gè)為T(mén)rue時(shí)等于True;否則等于False(同假為假)not邏輯非運(yùn)算符。例如

nota,當(dāng)a等于True時(shí),表達(dá)式等于False;否則等于True本課件是可編輯的正常PPT課件【例題】邏輯運(yùn)算符的使用實(shí)例x=Truey=Falseprint("xandy=",xandy)print("xory=",xory)print("notx=",notx)print("noty=",noty)運(yùn)行結(jié)果如下:xandy=Falsexory=Truenotx=Falsenoty=True本課件是可編輯的正常PPT課件6.字符串運(yùn)算符和成員運(yùn)算符運(yùn)算符具體描述+字符串連接*重復(fù)輸出字符串(*后為重復(fù)輸出的次數(shù))[]獲取字符串中指定索引位置的字符,索引從0開(kāi)始[start:end]截取字符串中的一部分,從索引位置start開(kāi)始到end結(jié)束(不包含end)in成員運(yùn)算符,如果字符串中包含給定的字符則返回Truenotin成員運(yùn)算符,如果字符串中未包含給定的字符則返回Truer或者R指定原始字符串。原始字符串是指所有的字符串都是直接按照字面的意思來(lái)使用,沒(méi)有轉(zhuǎn)義字符、特殊字符或不能打印的字符。原始字符串的第一個(gè)引號(hào)前加上字母r或R本課件是可編輯的正常PPT課件Python序號(hào)體系Python的兩種序號(hào)體系:本課件是可編輯的正常PPT課件【例題】字符串運(yùn)算符的例子b="hello"a=b+"world!"print(a)print(a*2)print(r"hello\nworld!")運(yùn)行結(jié)果如下:helloworld!helloworld!helloworld!hello\nworld!本課件是可編輯的正常PPT課件【例題】字符串運(yùn)算符和成員運(yùn)算符的例子b="python"print(b[2])print(b[-2])print(b[0:2])print("py"inb)print("pt"inb)運(yùn)行結(jié)果如下:topyTrueFalse本課件是可編輯的正常PPT課件7.運(yùn)算符優(yōu)先級(jí)運(yùn)算符具體描述**指數(shù)運(yùn)算的優(yōu)先級(jí)最高~+-邏輯非運(yùn)算符和正數(shù)/負(fù)數(shù)運(yùn)算符。注意,這里的+和-不是加減運(yùn)算符*/%//乘、除、取模和取整除+-加和減>><<位右移運(yùn)算和位左移運(yùn)算&按位與運(yùn)算^|按位異或運(yùn)算和按位或運(yùn)算>==!=大于、等于和不等于%=/=//=-=+=*=**=賦值運(yùn)算符isisnot身份運(yùn)算符innotin成員運(yùn)算符notorand邏輯運(yùn)算符本課件是可編輯的正常PPT課件2.4.2表達(dá)式表達(dá)式由常量、變量和運(yùn)算符等組成。例如:a=b+ca=b-ca=b*ca=b/ca=b%ca+=1b=a**2本課件是可編輯的正常PPT課件Python程序設(shè)計(jì)第3章程序的控制結(jié)構(gòu)課程描述本章將首先對(duì)程序的基本結(jié)構(gòu)進(jìn)行介紹,然后重點(diǎn)講解Python的常用語(yǔ)句,包括賦值語(yǔ)句、選擇語(yǔ)句、循環(huán)語(yǔ)句和跳轉(zhuǎn)語(yǔ)句,最后介紹異常處理語(yǔ)句。本章知識(shí)點(diǎn)3.1控制結(jié)構(gòu)3.2常用語(yǔ)句3.3異常處理語(yǔ)句本課件是可編輯的正常PPT課件3.1程序結(jié)構(gòu)計(jì)算機(jī)在解決某個(gè)具體問(wèn)題時(shí),主要有3種情形,分別是順序執(zhí)行所有的語(yǔ)句、選擇執(zhí)行部分語(yǔ)句和循環(huán)執(zhí)行部分語(yǔ)句。程序設(shè)計(jì)中對(duì)應(yīng)的3種基本結(jié)構(gòu)就是:順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。3.1.1順序結(jié)構(gòu)順序結(jié)構(gòu)是程序中最基本、最簡(jiǎn)單的結(jié)構(gòu)。它按照代碼的書(shū)寫(xiě)順序,從上到下、從左到右逐行執(zhí)行。在順序結(jié)構(gòu)中,每個(gè)語(yǔ)句或命令都是順序執(zhí)行的,沒(méi)有分支或跳轉(zhuǎn)。順序結(jié)構(gòu)適用于那些需要按照固定順序執(zhí)行的任務(wù),如數(shù)據(jù)的輸入、處理、輸出等。它是任何程序的基礎(chǔ),因?yàn)榧词故亲顝?fù)雜的程序,也是由一系列順序執(zhí)行的語(yǔ)句構(gòu)成的。3.1.2選擇結(jié)構(gòu)選擇結(jié)構(gòu)允許程序根據(jù)條件判斷來(lái)選擇執(zhí)行不同的代碼塊,通常通過(guò)條件語(yǔ)句來(lái)實(shí)現(xiàn)。選擇結(jié)構(gòu)增加了程序的靈活性和決策能力,使程序能夠根據(jù)不同的條件執(zhí)行不同的操作。選擇結(jié)構(gòu)適用于那些需要根據(jù)條件進(jìn)行分支執(zhí)行的任務(wù),如用戶輸入的判斷、數(shù)據(jù)的分類(lèi)處理、錯(cuò)誤處理等。它是實(shí)現(xiàn)程序邏輯判斷和決策的基礎(chǔ)。3.1.3循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)允許程序重復(fù)執(zhí)行某段代碼,直到滿足某個(gè)條件為止,通常通過(guò)循環(huán)語(yǔ)句來(lái)實(shí)現(xiàn)。循環(huán)結(jié)構(gòu)提高了程序的復(fù)用性和效率,使程序能夠處理重復(fù)性的任務(wù)。循環(huán)結(jié)構(gòu)適用于那些需要多次執(zhí)行相同或相似操作的任務(wù),如數(shù)據(jù)的遍歷、累加、求平均值等。它是實(shí)現(xiàn)程序自動(dòng)化和批量處理的基礎(chǔ)。3.1.4三種結(jié)構(gòu)的相互關(guān)系這三種基本結(jié)構(gòu)并不是孤立的,而是可以相互嵌套和組合的。一個(gè)程序中可以包含多個(gè)順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu),它們共同構(gòu)成了程序的邏輯框架。順序結(jié)構(gòu)是程序的基礎(chǔ),它確保了代碼按照預(yù)定的順序執(zhí)行。選擇結(jié)構(gòu)在順序結(jié)構(gòu)的基礎(chǔ)上增加了決策能力,使程序能夠根據(jù)條件執(zhí)行不同的代碼塊。循環(huán)結(jié)構(gòu)則進(jìn)一步增強(qiáng)了程序的復(fù)用性和效率,使程序能夠處理重復(fù)性的任務(wù)。3.1.4三種結(jié)構(gòu)的相互關(guān)系在實(shí)際編程中,通常要根據(jù)問(wèn)題的需求,合理地選擇和使用這三種基本結(jié)構(gòu),以及它們的組合形式,來(lái)構(gòu)建出滿足要求的程序。掌握這三種基本結(jié)構(gòu)及其相互關(guān)系,對(duì)于理解和編寫(xiě)高效、可維護(hù)的程序至關(guān)重要。3.2常用語(yǔ)句3.2.1賦值語(yǔ)句3.2.2選擇語(yǔ)句3.2.3循環(huán)語(yǔ)句3.2.4跳轉(zhuǎn)語(yǔ)句本課件是可編輯的正常PPT課件3.2.1賦值語(yǔ)句賦值語(yǔ)句是Python語(yǔ)言中最簡(jiǎn)單、最常用的語(yǔ)句。通過(guò)賦值語(yǔ)句可以定義變量并為其賦初始值。例如:a=2b=a+5本課件是可編輯的正常PPT課件【例題】賦值語(yǔ)句的例子a=10a+=1print(a)a*=10print(a)a**=2print(a)運(yùn)行結(jié)果如下:1111012100本課件是可編輯的正常PPT課件【例題】交換兩個(gè)變量的值傳統(tǒng)算法:引入第3個(gè)變量作為中間變量a,b=eval(input("請(qǐng)分別輸入a和b的值:"))temp=aa=bb=tempprint(a,b)本課件是可編輯的正常PPT課件【例題】交換兩個(gè)變量的值在Python中可以直接實(shí)現(xiàn)兩個(gè)變量值的交換。a,b=eval(input("請(qǐng)分別輸入a和b的值:"))a,b=b,aprint(a,b)本課件是可編輯的正常PPT課件3.2.2選擇語(yǔ)句1.單分支結(jié)構(gòu)2.二分支結(jié)構(gòu)3.多分支結(jié)構(gòu)本課件是可編輯的正常PPT課件1.單分支結(jié)構(gòu):if語(yǔ)句if條件表達(dá)式:

語(yǔ)句塊本課件是可編輯的正常PPT課件【例題】if語(yǔ)句的例子ifa>10:print("變量a大于10")如果語(yǔ)句塊中包含多條語(yǔ)句,則這些語(yǔ)句必須擁有相同的縮進(jìn)。例如:ifa>10:print("變量a大于10")a=10本課件是可編輯的正常PPT課件【例題】嵌套if語(yǔ)句的例子ifa>10:

print("變量a大于10")ifa>100:print("變量a大于100")本課件是可編輯的正常PPT課件2.二分支結(jié)構(gòu):if…else語(yǔ)句if條件表達(dá)式:

語(yǔ)句塊1else:

語(yǔ)句塊2本課件是可編輯的正常PPT課件【例題】if...else語(yǔ)句的例子ifa>10:

print("變量a大于10")else:print(“變量a小于或等于10")本課件是可編輯的正常PPT課件3.多分支結(jié)構(gòu):if…elif…else語(yǔ)句if條件表達(dá)式1:

語(yǔ)句塊1elif條件表達(dá)式2:

語(yǔ)句塊2elif條件表達(dá)式3:

語(yǔ)句塊3……else:

語(yǔ)句塊n本課件是可編輯的正常PPT課件【例題】成績(jī)統(tǒng)計(jì)成績(jī)統(tǒng)計(jì)規(guī)律如下:按照100分制,90分及以上成績(jī)?yōu)锳,80到90(不包括90)為B,60到80(不包括80)為C,60以下為D。寫(xiě)一個(gè)程序,當(dāng)用戶輸入分?jǐn)?shù),自動(dòng)轉(zhuǎn)換為ABCD的形式打印。本課件是可編輯的正常PPT課件【例題】成績(jī)統(tǒng)計(jì)score=int(input('請(qǐng)輸入一個(gè)分?jǐn)?shù):'))ifscore>=90andscore<=100:print('A')elif(score>=80)and(score<90):print('B')elif60<=score<80:print('C')elif60>score>=0:print('D')else:print('輸入錯(cuò)誤!')本課件是可編輯的正常PPT課件【例題】三個(gè)數(shù)由小到大輸出從鍵盤(pán)輸入三個(gè)數(shù)x,y,z,請(qǐng)將這三個(gè)數(shù)由小到大輸出。x,y,z=eval(input("請(qǐng)輸入三個(gè)數(shù):"))Max=max(x,y)Min=min(x,y)ifz>Max:print(Min,Max,z)elifz<Min:print(z,Min,Max)else:print(Min,z,Max)本課件是可編輯的正常PPT課件3.2.3循環(huán)語(yǔ)句1.while語(yǔ)句2.for語(yǔ)句本課件是可編輯的正常PPT課件1.while語(yǔ)句while條件表達(dá)式:

循環(huán)語(yǔ)句體本課件是可編輯的正常PPT課件【例題】while語(yǔ)句的例子使用while語(yǔ)句求1+2+…+9+10。i=1sum=0whilei<11:sum+=ii+=1print(sum)本課件是可編輯的正常PPT課件while語(yǔ)句的擴(kuò)展模式while<條件>:<語(yǔ)句塊1>else:<語(yǔ)句塊2>當(dāng)whlie循環(huán)正常執(zhí)行后,程序會(huì)繼續(xù)執(zhí)行else語(yǔ)句中內(nèi)容。else語(yǔ)句只在循環(huán)正常執(zhí)行之后才執(zhí)行。因此,可以在<語(yǔ)句塊2>中放置判斷循環(huán)執(zhí)行情況的語(yǔ)句。本課件是可編輯的正常PPT課件【例題】while語(yǔ)句擴(kuò)展模式的例子s,idx="BIT",0whileidx<len(s):print("循環(huán)進(jìn)行中:"+s[idx])idx+=1else:s="循環(huán)正常結(jié)束"print(s)執(zhí)行結(jié)果:循環(huán)進(jìn)行中:B循環(huán)進(jìn)行中:I循環(huán)進(jìn)行中:T循環(huán)正常結(jié)束本課件是可編輯的正常PPT課件2.for語(yǔ)句for循環(huán)變量in遍歷結(jié)構(gòu):

循環(huán)語(yǔ)句體遍歷結(jié)構(gòu)可以是字符串、文件、組合數(shù)據(jù)類(lèi)型或range()函數(shù)等。本課件是可編輯的正常PPT課件2.for語(yǔ)句range()函數(shù)是最常見(jiàn)的一種遍歷結(jié)構(gòu)的形式,其基本語(yǔ)法結(jié)構(gòu)如下:foriinrange(N):

循環(huán)語(yǔ)句體程序在執(zhí)行for語(yǔ)句時(shí),循環(huán)計(jì)數(shù)器變量i的取值是由range()函數(shù)生成的要遍歷的數(shù)字序列。本課件是可編輯的正常PPT課件2.for語(yǔ)句程序在執(zhí)行for語(yǔ)句時(shí),循環(huán)計(jì)數(shù)器變量i的取值是由range()函數(shù)生成的要遍歷的數(shù)字序列。range()函數(shù)的具體語(yǔ)法:range(start,stop[,step])生成一個(gè)從start開(kāi)始到stop(不包括該值)結(jié)束,步長(zhǎng)為step的整數(shù)序列。其中,start是可選的,默認(rèn)為0;step也是可選的,默認(rèn)為1。本課件是可編輯的正常PPT課件【例題】range()函數(shù)的應(yīng)用實(shí)例range(1,5)#代表從1到5(不包含5)[1,2,3,4]range(1,5,2)#代表從1到5(不包含5),間隔2[1,3]range(5)#代表從0到5(不包含5)[0,1,2,3,4]本課件是可編輯的正常PPT課件【例題】for語(yǔ)句的例子使用for語(yǔ)句求1+2+…+9+10。sum=0foriinrange(1,11):print(i)sum+=iprint(sum)本課件是可編輯的正常PPT課件for語(yǔ)句的擴(kuò)展模式for<循環(huán)變量>in<遍歷結(jié)構(gòu)>:<語(yǔ)句塊1>else:<語(yǔ)句塊2>當(dāng)for循環(huán)正常執(zhí)行之后,程序會(huì)繼續(xù)執(zhí)行else語(yǔ)句中內(nèi)容。else語(yǔ)句只在循環(huán)正常執(zhí)行之后才執(zhí)行。因此,可以在<語(yǔ)句塊2>中放置判斷循環(huán)執(zhí)行情況的語(yǔ)句。本課件是可編輯的正常PPT課件【例題】for語(yǔ)句擴(kuò)展模式的例子forsin"BIT":print("循環(huán)進(jìn)行中:"+s)else:s="循環(huán)正常結(jié)束"print(s)執(zhí)行結(jié)果:循環(huán)進(jìn)行中:B循環(huán)進(jìn)行中:I循環(huán)進(jìn)行中:T循環(huán)正常結(jié)束本課件是可編輯的正常PPT課件循環(huán)中的else擴(kuò)展用法總結(jié)else中語(yǔ)句塊的執(zhí)行條件:循環(huán)正常遍歷了所有內(nèi)容或由于條件不成立而結(jié)束循環(huán)。本課件是可編輯的正常PPT課件循環(huán)嵌套在Python中,允許在一個(gè)循環(huán)體中嵌入另一個(gè)循環(huán)體,這稱(chēng)為循環(huán)嵌套。本課件是可編輯的正常PPT課件【例題】循環(huán)嵌套的例子foriinrange(4):print("外循環(huán)遍歷出來(lái)的值:",i)forninrange(i):print("內(nèi)循環(huán)遍歷出來(lái)的值:",n)

本課件是可編輯的正常PPT課件【例題】循環(huán)嵌套的例子執(zhí)行結(jié)果:外循環(huán)遍歷出來(lái)的值:0外循環(huán)遍歷出來(lái)的值:1內(nèi)循環(huán)遍歷出來(lái)的值:0外循環(huán)遍歷出來(lái)的值:2內(nèi)循環(huán)遍歷出來(lái)的值:0內(nèi)循環(huán)遍歷出來(lái)的值:1外循環(huán)遍歷出來(lái)的值:3內(nèi)循環(huán)遍歷出來(lái)的值:0內(nèi)循環(huán)遍歷出來(lái)的值:1內(nèi)循環(huán)遍歷出來(lái)的值:2本課件是可編輯的正常PPT課件3.2.4跳轉(zhuǎn)語(yǔ)句在Python中,跳轉(zhuǎn)語(yǔ)句是能夠改變程序正常執(zhí)行順序的語(yǔ)句。它們?cè)试S程序在某些條件下跳過(guò)某些代碼塊,或者重復(fù)執(zhí)行某些代碼塊,從而實(shí)現(xiàn)更復(fù)雜的邏輯控制。本課件是可編輯的正常PPT課件1.continue語(yǔ)句在循環(huán)體中使用continue語(yǔ)句可以跳過(guò)本次循環(huán)后面的代碼,重新開(kāi)始下一次循環(huán)。本課件是可編輯的正常PPT課件【例題】計(jì)算1~100之間的偶數(shù)之和計(jì)算1~100之間偶數(shù)之和。sum=0foriinrange(1,101):ifi%2==1:continuesum+=iprint(sum)本課件是可編輯的正常PPT課件2.break語(yǔ)句在循環(huán)體中使用break語(yǔ)句可以跳出循環(huán)體。本課件是可編輯的正常PPT課件【例題】break語(yǔ)句的例子將【PPT-27例題(使用while語(yǔ)句求1+2+…+9+10)】修改為使用break語(yǔ)句跳出循環(huán)體。i=1sum=0whileTrue:ifi==11:breaksum+=ii+=1print(sum)本課件是可編輯的正常PPT課件3.3異常處理語(yǔ)句3.3.1異常處理語(yǔ)句3.3.2異常處理總結(jié)本課件是可編輯的正常PPT課件3.3.1異常處理語(yǔ)句程序在運(yùn)行過(guò)程中可能會(huì)出現(xiàn)異常情況,使用異常處理語(yǔ)句可以捕獲到異常情況,并進(jìn)行處理,從而避免程序異常退出。Python的異常處理語(yǔ)句為try-except本課件是可編輯的正常PPT課件異常處理

12num=eval(input("請(qǐng)輸入一個(gè)整數(shù):"))print(num**2)

觀察下面這段小程序:當(dāng)用戶輸入的不是數(shù)字呢?

>>>

請(qǐng)輸入一個(gè)整數(shù):10010000>>>

請(qǐng)輸入一個(gè)整數(shù):NOTraceback(mostrecentcalllast):File"D:/PythonPL/echoInt.py",line1,in<module>

num=eval(input("請(qǐng)輸入一個(gè)整數(shù):"))File"<string>",line1,in<module>NameError:name'No'isnotdefined異常處理Python解釋器返回了異常信息,同時(shí)程序退出。try-except語(yǔ)句Python異常信息中最重要的部分是異常類(lèi)型,它表明了發(fā)生異常的原因,也是程序處理異常的依據(jù)。Python使用try-except語(yǔ)句實(shí)現(xiàn)異常處理,基本的語(yǔ)法格式如下:try: <語(yǔ)句塊1>except<異常類(lèi)型>: <語(yǔ)句塊2>try-except語(yǔ)句

try:

num=eval(input("請(qǐng)輸入一個(gè)整數(shù):"))print(num**2)exceptNameError:print("輸入錯(cuò)誤,請(qǐng)輸入一個(gè)整數(shù)!")

該程序執(zhí)行效果如下:>>>

請(qǐng)輸入一個(gè)整數(shù):NO輸入錯(cuò)誤,請(qǐng)輸入一個(gè)整數(shù)!try-except語(yǔ)句try-except語(yǔ)句可以支持多個(gè)except語(yǔ)句,語(yǔ)法格式如下:try: <語(yǔ)句塊1>except<異常類(lèi)型1>: <語(yǔ)句塊2>…except<異常類(lèi)型N>: <語(yǔ)句塊N+1>except: <語(yǔ)句塊N+2>try-except語(yǔ)句最后一個(gè)except語(yǔ)句沒(méi)有指定任何類(lèi)型,表示它對(duì)應(yīng)的語(yǔ)句塊可以處理所有其他異常。這個(gè)過(guò)程與if-elif-else語(yǔ)句類(lèi)似,是分支結(jié)構(gòu)的一種表達(dá)方式。

12345678try:alp="ABCDEFGHIJKLMNOPQRSTUVWXYZ"

idx=eval(input("請(qǐng)輸入一個(gè)整數(shù):"))print(alp[idx])exceptNameError:print("輸入錯(cuò)誤,請(qǐng)輸入一個(gè)整數(shù)!")except:print("其他錯(cuò)誤")

try-except語(yǔ)句該程序?qū)⒂脩糨斎氲臄?shù)字作為索引從字符串a(chǎn)lp中返回一個(gè)字符,當(dāng)用戶輸入非整數(shù)字符時(shí),exceptNameError異常被捕獲到,提示用戶輸入類(lèi)型錯(cuò)誤。當(dāng)用戶輸入數(shù)字不在0到25之間時(shí),異常被except捕獲,程序打印其他錯(cuò)誤信息,執(zhí)行過(guò)程和結(jié)果如下:>>>

請(qǐng)輸入一個(gè)整數(shù):NO輸入錯(cuò)誤,請(qǐng)輸入一個(gè)整數(shù)!>>>

請(qǐng)輸入一個(gè)整數(shù):100其他錯(cuò)誤異常處理類(lèi)型Python中常見(jiàn)的異常處理類(lèi)型:AttributeError:屬性錯(cuò)誤,對(duì)象引用和賦值失敗時(shí)會(huì)引發(fā)屬性錯(cuò)誤。NameError:試圖訪問(wèn)的變量名不存在。SyntaxError:語(yǔ)法錯(cuò)誤,代碼形式錯(cuò)誤。Exception:所有異常的基類(lèi),因?yàn)樗蠵ython異常類(lèi)都是基類(lèi)。Exception的其中一員,異常都是從基類(lèi)Exception繼承的,并且都在exceptions模塊中定義。IOError:一般常見(jiàn)于打開(kāi)不存在文件時(shí)會(huì)引發(fā)IOError錯(cuò)誤,也可以解理為輸出輸入錯(cuò)誤。KeyError:使用了映射中不存在的關(guān)鍵字(鍵)時(shí)引發(fā)的關(guān)鍵字錯(cuò)誤。IndexError:索引錯(cuò)誤,使用的索引不存在,常索引超出序列范圍。TypeError:類(lèi)型錯(cuò)誤,內(nèi)建操作或是函數(shù)應(yīng)用了錯(cuò)誤類(lèi)型的對(duì)象時(shí)會(huì)引發(fā)類(lèi)型錯(cuò)誤。ZeroDivisonError:除數(shù)為0,在用除法操作時(shí),第二個(gè)參數(shù)為0時(shí)引發(fā)了該錯(cuò)誤。ValueError:值錯(cuò)誤,傳給對(duì)象的參數(shù)類(lèi)型不正確,例如給int()函數(shù)傳入了字符串?dāng)?shù)據(jù)類(lèi)型的參數(shù)。try-except-else-finally語(yǔ)句除了try和except保留字外,異常語(yǔ)句還可以與else和finally保留字配合使用,語(yǔ)法格式如下:try: <語(yǔ)句塊1>except<異常類(lèi)型1>: <語(yǔ)句塊2>else: <語(yǔ)句塊3>finally: <語(yǔ)句塊4>

try-except-else-finally語(yǔ)句此處的else語(yǔ)句與for循環(huán)和while循環(huán)中的else一樣,當(dāng)try中的語(yǔ)句塊1正常執(zhí)行結(jié)束且沒(méi)有發(fā)生異常時(shí),else中的語(yǔ)句塊3執(zhí)行,可以看作是對(duì)try語(yǔ)句塊正常執(zhí)行后的一種追加處理。finally語(yǔ)句塊則不同,無(wú)論try中的語(yǔ)句塊1是否發(fā)生異常,語(yǔ)句塊4都會(huì)執(zhí)行,可以將程序執(zhí)行語(yǔ)句塊1的一些收尾工作放在這里。try-except-else-finally語(yǔ)句try-except-else-finally語(yǔ)句采用else和finally修改代碼如下:

12345678910try:alp="ABCDEFGHIJKLMNOPQRSTUVWXYZ"

idx=eval(input("請(qǐng)輸入一個(gè)整數(shù):"))print(alp[idx])exceptNameError:print("輸入錯(cuò)誤,請(qǐng)輸入一個(gè)整數(shù)!")else:print("沒(méi)有發(fā)生異常")finally:print("程序執(zhí)行完畢,不知道是否發(fā)生了異常")

執(zhí)行過(guò)程和結(jié)果如下:>>>

請(qǐng)輸入一個(gè)整數(shù):5F沒(méi)有發(fā)生異常程序執(zhí)行完畢,不知道是否發(fā)生了異常>>>

請(qǐng)輸入一個(gè)整數(shù):NO輸入錯(cuò)誤,請(qǐng)輸入一個(gè)整數(shù)!程序執(zhí)行

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論