![Python程序設(shè)計(jì)_教學(xué)大綱_段震.doc_第1頁(yè)](http://file.renrendoc.com/FileRoot1/2020-2/1/e0e0e519-6cde-46da-86a1-db6b22afc663/e0e0e519-6cde-46da-86a1-db6b22afc6631.gif)
![Python程序設(shè)計(jì)_教學(xué)大綱_段震.doc_第2頁(yè)](http://file.renrendoc.com/FileRoot1/2020-2/1/e0e0e519-6cde-46da-86a1-db6b22afc663/e0e0e519-6cde-46da-86a1-db6b22afc6632.gif)
![Python程序設(shè)計(jì)_教學(xué)大綱_段震.doc_第3頁(yè)](http://file.renrendoc.com/FileRoot1/2020-2/1/e0e0e519-6cde-46da-86a1-db6b22afc663/e0e0e519-6cde-46da-86a1-db6b22afc6633.gif)
![Python程序設(shè)計(jì)_教學(xué)大綱_段震.doc_第4頁(yè)](http://file.renrendoc.com/FileRoot1/2020-2/1/e0e0e519-6cde-46da-86a1-db6b22afc663/e0e0e519-6cde-46da-86a1-db6b22afc6634.gif)
![Python程序設(shè)計(jì)_教學(xué)大綱_段震.doc_第5頁(yè)](http://file.renrendoc.com/FileRoot1/2020-2/1/e0e0e519-6cde-46da-86a1-db6b22afc663/e0e0e519-6cde-46da-86a1-db6b22afc6635.gif)
已閱讀5頁(yè),還剩22頁(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)介
資料收集于網(wǎng)絡(luò) 如有侵權(quán)請(qǐng)聯(lián)系網(wǎng)站 刪除 謝謝 Python程序設(shè)計(jì)教學(xué)大綱 安徽大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù) 學(xué)院 2015 年 10 月課程性質(zhì)與設(shè)置目的要求(前言)Python程序設(shè)計(jì)課程是計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院各專業(yè)的專業(yè)選修課程。Python是一門(mén)開(kāi)源的高級(jí)動(dòng)態(tài)編程語(yǔ)言,支持命令式編程、函數(shù)式編程、面向?qū)ο蟪绦蛟O(shè)計(jì),語(yǔ)法簡(jiǎn)潔清晰,并且擁有大量功能豐富而強(qiáng)大的標(biāo)準(zhǔn)庫(kù)和擴(kuò)展庫(kù)。本課程將從Python語(yǔ)言的實(shí)現(xiàn)機(jī)制入手,結(jié)合示例程序和上機(jī)實(shí)驗(yàn),較為系統(tǒng)地介紹Python語(yǔ)言的主要特征和編程技術(shù)。設(shè)置本課程的目的是:使學(xué)習(xí)者在全面了解Python技術(shù)歷史、現(xiàn)狀與發(fā)展趨勢(shì)的基礎(chǔ)上,系統(tǒng)掌握Python基本概念、編程思想以及程序設(shè)計(jì)技術(shù),具備熟練的Python編程技能和面向?qū)ο筌浖O(shè)計(jì)技術(shù)思想,完成本課程的學(xué)習(xí)后能夠熟練地綜合應(yīng)用Python技術(shù)和面向?qū)ο蟮乃枷刖帉?xiě)程序解決現(xiàn)實(shí)生活中的問(wèn)題,最終提高程序設(shè)計(jì)水平和計(jì)算機(jī)應(yīng)用能力,從而能勝任企業(yè)軟件研發(fā)以及科研院所的研發(fā)、教學(xué)任務(wù)。學(xué)習(xí)本課程的要求是:學(xué)習(xí)者應(yīng)理解Python的編程模式,熟練運(yùn)用Python列表、元組、字典、集合等基本數(shù)據(jù)類型以及相關(guān)列表推導(dǎo)式、切片等特性來(lái)解決實(shí)際問(wèn)題,熟練掌握Python分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)、函數(shù)設(shè)計(jì)以及類的設(shè)計(jì)與使用,熟練使用正則表達(dá)式處理字符串,同時(shí)掌握不同領(lǐng)域的Python擴(kuò)展模塊,并能夠解決實(shí)際問(wèn)題。先修課程要求:無(wú)本課程計(jì)劃34學(xué)時(shí),2學(xué)分。選用教材:董付國(guó). Python程序設(shè)計(jì)(第2版).北京:清華大學(xué)出版社,2016.5.考核方法:考查教學(xué)進(jìn)程安排表:周次學(xué)時(shí)數(shù)教 學(xué) 主 要 內(nèi) 容教學(xué)環(huán)節(jié)備注13Python的安裝與使用Python擴(kuò)展庫(kù)的管理Python中的數(shù)據(jù)類型講課23Python中的內(nèi)置函數(shù)、基本輸入輸出Python代碼編寫(xiě)規(guī)范Python文件名和程序運(yùn)行講課33Python中的列表使用講課43Python中的元組、字典及集合的使用講課53選擇和循環(huán)結(jié)構(gòu)講課63字符串和正則表達(dá)式講課73函數(shù)的設(shè)計(jì)與使用講課83類的定義與使用類的方法和屬性講課93文本文件的基本操作二進(jìn)制文件操作文件操作和目錄操作講課103異常處理結(jié)構(gòu)與程序調(diào)試GUI編程講課113+1網(wǎng)絡(luò)程序設(shè)計(jì)多線程編程課程隨堂測(cè)試講課+測(cè)試第一章 基礎(chǔ)知識(shí)一、學(xué)習(xí)目的Python語(yǔ)言的發(fā)展過(guò)程、安裝及簡(jiǎn)單使用;Python程序設(shè)計(jì)中的基本知識(shí);Python代碼的編寫(xiě)規(guī)范;Python文件名的要求;Python程序的運(yùn)行方式;編寫(xiě)自己的包以及基本示例。本章計(jì)劃6學(xué)時(shí)。二、課程內(nèi)容1.0 Python是一種怎樣的語(yǔ)言Python是一門(mén)跨平臺(tái)、開(kāi)源、免費(fèi)的解釋型高級(jí)動(dòng)態(tài)編程語(yǔ)言,同時(shí)也支持偽編譯將Python源程序轉(zhuǎn)換為字節(jié)碼來(lái)優(yōu)化程序和提高運(yùn)行速度。Python支持命令式編程、函數(shù)式編程,完全支持面向?qū)ο蟪绦蛟O(shè)計(jì),語(yǔ)法簡(jiǎn)潔清晰,并且擁有大量的幾乎支持所有領(lǐng)域應(yīng)用開(kāi)發(fā)的成熟擴(kuò)展庫(kù)。1.1 如何選擇Python版本多版本共存與切換簡(jiǎn)便方法:更改系統(tǒng)環(huán)境變量path查看已安裝版本的方法有時(shí)候可能需要同時(shí)安裝多個(gè)不同的版本,并根據(jù)不同的開(kāi)發(fā)需求在兩個(gè)版本之間進(jìn)行切換。1.2 Python安裝與簡(jiǎn)單使用默認(rèn)編程環(huán)境:IDLE1.3 使用pip管理第三方包Python2中需要單獨(dú)安裝下載地址:/pypi/pip安裝方法:cmd=python get-pip.py用法示例Python3安裝包中已默認(rèn)包含pip1.4.1 Python的對(duì)象模型對(duì)象是python語(yǔ)言中最基本的概念,在python中處理的每樣?xùn)|西都是對(duì)象。python中有許多內(nèi)置對(duì)象可供編程者使用,內(nèi)置對(duì)象可直接使用,如數(shù)字、字符串、列表、del等;非內(nèi)置對(duì)象需要導(dǎo)入模塊才能使用,如正弦函數(shù)sin(x),隨機(jī)數(shù)產(chǎn)生函數(shù)random( )等。常用內(nèi)置對(duì)象1.4.2 Python變量在Python中,不需要事先聲明變量名及其類型,直接賦值即可創(chuàng)建各種類型的對(duì)象變量。雖然不需要在使用之前顯式地聲明變量及其類型,但是Python仍屬于強(qiáng)類型編程語(yǔ)言。Python還是一種動(dòng)態(tài)類型語(yǔ)言Python采用的是基于值的內(nèi)存管理方式Python具有自動(dòng)內(nèi)存管理功能在定義變量名的時(shí)候,需要注意的問(wèn)題。1.4.3 數(shù)字?jǐn)?shù)字是python中最常用的對(duì)象,屬于不可變對(duì)象。可以表示任意大小的數(shù)字。1.4.4 字符串用單引號(hào)、雙引號(hào)或三引號(hào)括起來(lái)的符號(hào)系列稱為字符串單引號(hào)、雙引號(hào)、三單引號(hào)、三雙引號(hào)可以互相嵌套,用來(lái)表示復(fù)雜字符串。1. 字符串合并2. 字符串格式化3. 轉(zhuǎn)義字符1.4.5 操作符和表達(dá)式Python中很多運(yùn)算符有多重含義,在程序中運(yùn)算符的具體含義取決于操作數(shù)的類型。在Python中,單個(gè)任何類型的對(duì)象或常數(shù)屬于合法表達(dá)式。1.4.6 常用內(nèi)置函數(shù)內(nèi)置函數(shù)不需要導(dǎo)入任何模塊即可使用執(zhí)行下面的命令可以列出所有內(nèi)置函數(shù) dir(_builtins_)1.4.7 對(duì)象的刪除在Python中具有自動(dòng)內(nèi)存管理功能。可以使用del命令來(lái)顯式刪除對(duì)象并解除與值之間的指向關(guān)系。1.4.8 基本輸入輸出用Python進(jìn)行程序設(shè)計(jì),輸入是通過(guò)input( )函數(shù)來(lái)實(shí)現(xiàn)的。盡管形式一樣,Python 2.x和Python 3.x對(duì)該函數(shù)的解釋略有不同。1.4.9 模塊的使用Python默認(rèn)安裝僅包含部分基本或核心模塊,但用戶可以安裝大量的擴(kuò)展模塊,pip是管理模塊的重要工具import 模塊名1.5 Python代碼規(guī)范(1)縮進(jìn)(2)注釋(3)每個(gè)import只導(dǎo)入一個(gè)模塊(4)如果一行語(yǔ)句太長(zhǎng),可以在行尾加上來(lái)?yè)Q行分成多行,但是更建議使用括號(hào)來(lái)包含多行內(nèi)容。(5)必要的空格與空行(6)適當(dāng)使用異常處理結(jié)構(gòu)進(jìn)行容錯(cuò),后面將詳細(xì)講解。(7)軟件應(yīng)具有較強(qiáng)的可測(cè)試性,測(cè)試與開(kāi)發(fā)齊頭并進(jìn)。1.6 Python文件名1.7 Python腳本的“_name_”屬性1.8 編寫(xiě)自己的包與模塊包可以看做處于同一目錄中的模塊。1.9 Python快速入門(mén)問(wèn)題1:用戶輸入一個(gè)三位自然數(shù),計(jì)算并輸出其佰位、十位和個(gè)位上的數(shù)字。問(wèn)題2:已知三角形的兩邊長(zhǎng)及其夾角,求第三邊長(zhǎng)。問(wèn)題3:任意輸入三個(gè)英文單詞,按字典順序輸出。三、重點(diǎn)、難點(diǎn)提示(一)Python中的對(duì)象(二)Python代碼的編寫(xiě)規(guī)范四、思考與練習(xí)安裝Python開(kāi)發(fā)包,并練習(xí)使用pip管理擴(kuò)展庫(kù)編程實(shí)現(xiàn)教材上的示例習(xí)題1.10第二章 Python數(shù)據(jù)結(jié)構(gòu)一、學(xué)習(xí)目的Python中的數(shù)據(jù)結(jié)構(gòu),包括列表、元祖、字典、集合以及其他基本數(shù)據(jù)結(jié)構(gòu)。本章計(jì)劃6學(xué)時(shí)。二、課程內(nèi)容2.1 列表列表是Python中內(nèi)置可變序列,是若干元素的有序集合,列表中的每一個(gè)數(shù)據(jù)稱為元素,列表的所有元素放在一對(duì)中括號(hào)“”和“”中,并使用逗號(hào)分隔開(kāi);當(dāng)列表元素增加或刪除時(shí),列表對(duì)象自動(dòng)進(jìn)行擴(kuò)展或收縮內(nèi)存,保證元素之間沒(méi)有縫隙;在Python中,一個(gè)列表中的數(shù)據(jù)類型可以各不相同,可以同時(shí)分別為整數(shù)、實(shí)數(shù)、字符串等基本類型,甚至是列表、元素、字典、集合以及其他自定義類型的對(duì)象。l 列表創(chuàng)建與刪除l 列表元素的增加l 列表元素的刪除l 列表元素訪問(wèn)與計(jì)數(shù)l 成員資格判斷l(xiāng) 切片操作l 列表排序l 用于序列操作的常用內(nèi)置函數(shù)l 列表推導(dǎo)式2.2 元組元組和列表類似,但屬于不可變序列,元組一旦創(chuàng)建,用任何方法都不可以修改其元素。元組的定義方式和列表相同,但定義時(shí)所有元素是放在一對(duì)圓括號(hào)“(”和“)”中,而不是方括號(hào)中。l 元組創(chuàng)建與刪除l 元組與列表的區(qū)別l 序列解包l 生成器推導(dǎo)式2.3 字典字典是鍵值對(duì)的無(wú)序可變集合。定義字典時(shí),每個(gè)元素的鍵和值用冒號(hào)分隔,元素之間用逗號(hào)分隔,所有的元素放在一對(duì)大括號(hào)“”和“”中。字典中的每個(gè)元素包含兩部分:鍵和值,向字典添加一個(gè)鍵的同時(shí),必須為該鍵增添一個(gè)值。字典中的鍵可以為任意不可變數(shù)據(jù),比如整數(shù)、實(shí)數(shù)、復(fù)數(shù)、字符串、元組等等。字典中的鍵不允許重復(fù)。globals()返回包含當(dāng)前作用域內(nèi)所有全局變量和值的字典locals()返回包含當(dāng)前作用域內(nèi)所有局部變量和值的字典l 字典創(chuàng)建與刪除l 字典元素的讀取l 字典元素的添加與修改l 字典應(yīng)用案例l 有序字典l 字典推導(dǎo)式2.4 集合集合是無(wú)序可變集合,使用一對(duì)大括號(hào)界定,元素不可重復(fù)。l 集合的創(chuàng)建與刪除l 集合操作l 集合推導(dǎo)式2.5 再談內(nèi)置方法sorted()2.6 其他數(shù)據(jù)結(jié)構(gòu)在Python中,除了基本序列之外,還有其他一些常用的數(shù)據(jù)結(jié)構(gòu),如堆、棧、隊(duì)列、樹(shù)、圖等等。有些結(jié)構(gòu)Python已經(jīng)提供,而有些則需要自己利用基本數(shù)據(jù)結(jié)構(gòu)來(lái)實(shí)現(xiàn)。l 堆l 隊(duì)列l(wèi) 棧l 鏈表l 二叉樹(shù)l 有向圖三、重點(diǎn)、難點(diǎn)提示(一)Python中的常見(jiàn)數(shù)據(jù)結(jié)構(gòu)及其使用差異(二)Python運(yùn)算符的多重含義四、思考與練習(xí)編程實(shí)現(xiàn)教材上的示例習(xí)題2.3 / 2.5 / 2.9 / 2.10第三章 選擇與循環(huán)一、學(xué)習(xí)目的Python中的運(yùn)算符和條件表達(dá)式;選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu)的基本使用。本章計(jì)劃3學(xué)時(shí)。二、課程內(nèi)容3.1 條件表達(dá)式算術(shù)運(yùn)算符:+、-、*、/、/、%、*關(guān)系運(yùn)算符:、=、=、!=,可以連續(xù)使用測(cè)試運(yùn)算符:in、not in、is、is not邏輯運(yùn)算符:and、or、not,注意短路求值位運(yùn)算符:、&、|、 、 3.2 選擇結(jié)構(gòu)l 單分支選擇結(jié)構(gòu)l 雙分支結(jié)構(gòu)l 多分支結(jié)構(gòu)l 選擇結(jié)構(gòu)的嵌套l 選擇結(jié)構(gòu)應(yīng)用3.3 循環(huán)結(jié)構(gòu)l for循環(huán)與while循環(huán)Python提供了兩種基本的循環(huán)結(jié)構(gòu)語(yǔ)句while語(yǔ)句、for語(yǔ)句。while循環(huán)一般用于循環(huán)次數(shù)難以提前確定的情況,也可以用于循環(huán)次數(shù)確定的情況;for循環(huán)一般用于循環(huán)次數(shù)可以提前確定的情況,尤其是用于枚舉序列或迭代對(duì)象中的元素;一般優(yōu)先考慮使用for循環(huán)。相同或不同的循環(huán)結(jié)構(gòu)之間都可以互相嵌套,實(shí)現(xiàn)更為復(fù)雜的邏輯。l 循環(huán)結(jié)構(gòu)的優(yōu)化為了優(yōu)化程序以獲得更高的效率和運(yùn)行速度,在編寫(xiě)循環(huán)語(yǔ)句時(shí),應(yīng)盡量減少循環(huán)內(nèi)部不必要的計(jì)算,將與循環(huán)變量無(wú)關(guān)的代碼盡可能地提取到循環(huán)之外。對(duì)于使用多重循環(huán)嵌套的情況,應(yīng)盡量減少內(nèi)層循環(huán)中不必要的計(jì)算,盡可能地向外提。3.4 break和continue語(yǔ)句break語(yǔ)句在while循環(huán)和for循環(huán)中都可以使用,一般放在if選擇結(jié)構(gòu)中,一旦break語(yǔ)句被執(zhí)行,將使得整個(gè)循環(huán)提前結(jié)束。continue語(yǔ)句的作用是終止當(dāng)前循環(huán),并忽略continue之后的語(yǔ)句,然后回到循環(huán)的頂端,提前進(jìn)入下一次循環(huán)。除非break語(yǔ)句讓代碼更簡(jiǎn)單或更清晰,否則不要輕易使用。3.5 案例精選三、重點(diǎn)、難點(diǎn)提示(一)Python的關(guān)系運(yùn)算符和條件表達(dá)式(二)Python中的代碼縮進(jìn)(三)循環(huán)代碼的優(yōu)化四、思考與練習(xí)編程實(shí)現(xiàn)教材上的示例習(xí)題3.5 / 3.7 / 3.8第四章 字符串與正則表達(dá)式一、學(xué)習(xí)目的Python中的字符串及字符串的常用方法;正則表達(dá)式的基本內(nèi)容及綜合運(yùn)用。本章計(jì)劃3學(xué)時(shí)。二、課程內(nèi)容4.1 字符串在Python中,字符串也屬于序列類型,除了支持序列通用方法(包括分片操作)以外,還支持特有的字符串操作方法。字符串屬于不可變序列類型Python字符串駐留機(jī)制:對(duì)于短字符串,將其賦值給多個(gè)不同的對(duì)象時(shí),內(nèi)存中只有一個(gè)副本,多個(gè)對(duì)象共享該副本。長(zhǎng)字符串不遵守駐留機(jī)制。判斷一個(gè)變量s是否為字符串,應(yīng)使用isinstance(s,basestring)。在Python3之前,字符串有str和unicode兩種,其基類都是basestring。在Python3之后合二為一了。在Python3中,程序源文件默認(rèn)為UTF-8編碼,全面支持中文,字符串對(duì)象不再有encode和decode方法。l 字符串格式化l 字符串常用方法l 字符串常量4.2 正則表達(dá)式正則表達(dá)式是字符串處理的有力工具和技術(shù)。正則表達(dá)式使用某種預(yù)定義的模式去匹配一類具有共同特征的字符串,主要用于處理字符串,可以快速、準(zhǔn)確地完成復(fù)雜的查找、替換等處理要求。Python中,re模塊提供了正則表達(dá)式操作所需要的功能。l 正則表達(dá)式元字符.:匹配除換行符以外的任意單個(gè)字符*:匹配位于*之前的0個(gè)或多個(gè)字符+:匹配位于+之前的一個(gè)或多個(gè)字符|:匹配位于|之前或之后的字符:匹配行首,匹配以后面的字符開(kāi)頭的字符串$:匹配行尾,匹配以$之前的字符結(jié)束的字符串?:匹配位于?之前的0個(gè)或1個(gè)字符:表示位于之后的為轉(zhuǎn)義字符:匹配位于中的任意一個(gè)字符-:用在之內(nèi)用來(lái)表示范圍():將位于()內(nèi)的內(nèi)容作為一個(gè)整體來(lái)對(duì)待:按中的次數(shù)進(jìn)行匹配b:匹配單詞頭或單詞尾B:與b含義相反d:匹配任何數(shù)字,相當(dāng)于0-9D:與d含義相反s:匹配任何空白字符S:與s含義相反w:匹配任何字母、數(shù)字以及下劃線,相當(dāng)于a-zA-Z0-9_W:與w含義相反l re模塊主要方法compile(pattern,flags):創(chuàng)建模式對(duì)象search(pattern,string,flags):在字符串中尋找模式match(pattern,string,flags):從字符串的開(kāi)始處匹配模式findall(pattern,string,flags):列出字符串中模式的所有匹配項(xiàng)split(pattern,string,maxsplit=0):根據(jù)模式匹配項(xiàng)分割字符串sub(pat,repl,string,count=0):將字符串中所有pat的匹配項(xiàng)用repl替換escape(string):將字符串中所有特殊正則表達(dá)式字符轉(zhuǎn)義l 直接使用re模塊方法l 使用正則表達(dá)式對(duì)象l 子模式與match對(duì)象l 正則表達(dá)式應(yīng)用案例三、重點(diǎn)、難點(diǎn)提示(一)正則表達(dá)式子模塊擴(kuò)展語(yǔ)法(二)字符串編碼,字符串格式化四、思考與練習(xí)編程實(shí)現(xiàn)教材上的示例習(xí)題4.2 / 4.3 / 4.5第五章 函數(shù)設(shè)計(jì)與使用一、學(xué)習(xí)目的Python中函數(shù)的定義方法;參數(shù)類型;變量作用域。本章計(jì)劃3學(xué)時(shí)。二、課程內(nèi)容5.1 函數(shù)定義def 函數(shù)名(參數(shù)列表):注釋函數(shù)體5.2 形參與實(shí)參函數(shù)定義時(shí)括弧內(nèi)為形參,一個(gè)函數(shù)可以沒(méi)有形參,但是括弧必須要有,表示該函數(shù)不接受參數(shù)。函數(shù)調(diào)用時(shí)向其傳遞實(shí)參,將實(shí)參的值或引用傳遞給形參。在函數(shù)內(nèi)直接修改形參的值不影響實(shí)參。5.3 參數(shù)類型在Python中,函數(shù)參數(shù)有很多種:可以為普通參數(shù)、默認(rèn)值參數(shù)、關(guān)鍵參數(shù)、可變長(zhǎng)度參數(shù)等等。Python函數(shù)的定義非常靈活,在定義函數(shù)時(shí)不需要指定參數(shù)的類型,也不需要指定函數(shù)的類型,完全由調(diào)用者決定,類似于重載和泛型;函數(shù)編寫(xiě)如果有問(wèn)題,只有在調(diào)用時(shí)才能被發(fā)現(xiàn),傳遞某些參數(shù)時(shí)執(zhí)行正確,而傳遞另一些類型的參數(shù)時(shí)則出現(xiàn)錯(cuò)誤。l 默認(rèn)值參數(shù)def 函數(shù)名(形參名=默認(rèn)值,) 函數(shù)體默認(rèn)值參數(shù)必須出現(xiàn)在函數(shù)參數(shù)列表的最右端,且任何一個(gè)默認(rèn)值參數(shù)右邊不能有非默認(rèn)值參數(shù)。調(diào)用帶有默認(rèn)值參數(shù)的函數(shù)時(shí),可以不對(duì)默認(rèn)值參數(shù)進(jìn)行賦值,也可以賦值,具有較大的靈活性。l 關(guān)鍵參數(shù)關(guān)鍵參數(shù)主要指實(shí)參,即調(diào)用函數(shù)時(shí)的參數(shù)傳遞方式。通過(guò)關(guān)鍵參數(shù)傳遞,實(shí)參順序可以和形參順序不一致,但不影響傳遞結(jié)果,避免了用戶需要牢記位置參數(shù)順序的麻煩。l 可變長(zhǎng)度參數(shù)可變長(zhǎng)度參數(shù)主要有兩種形式:*parameter和*parameter,前者用來(lái)接受多個(gè)實(shí)參并將其放在一個(gè)元組中,后者接受字典形式的實(shí)參。l 參數(shù)傳遞的序列解包傳遞參數(shù)時(shí),可以通過(guò)在實(shí)參序列前加星號(hào)將其解包,然后傳遞給多個(gè)單變量形參。5.4 return語(yǔ)句return語(yǔ)句用來(lái)從一個(gè)函數(shù)中返回,即跳出函數(shù),也可用return語(yǔ)句從函數(shù)中返回一個(gè)值。如果函數(shù)沒(méi)有return語(yǔ)句,Python將認(rèn)為該函數(shù)以return None結(jié)束。5.5 變量作用域變量起作用的范圍稱為變量的作用域。一個(gè)變量在函數(shù)外部定義和在函數(shù)內(nèi)部定義,其作用域是不同的。局部變量的引用比全局變量速度快。三、重點(diǎn)、難點(diǎn)提示(一)默認(rèn)值參數(shù),關(guān)鍵參數(shù),可變長(zhǎng)度參數(shù),參數(shù)傳遞時(shí)的序列解包(二)Lambda表達(dá)式四、思考與練習(xí)編程實(shí)現(xiàn)教材上的示例習(xí)題5.2 / 5.3 / 5.10第六章 面向?qū)ο蟪绦蛟O(shè)計(jì)一、學(xué)習(xí)目的Python中類的定義與使用;類的方法;Python2和Python3中的類的屬性。本章計(jì)劃3學(xué)時(shí)。二、課程內(nèi)容6.1 類的定義與使用l 類定義語(yǔ)法Python使用class關(guān)鍵字來(lái)定義類,class關(guān)鍵字之后是一個(gè)空格,然后是類的名字,再然后是一個(gè)冒號(hào),最后換行并定義類的內(nèi)部實(shí)現(xiàn)。類名的首字母一般要大寫(xiě),當(dāng)然您也可以按照自己的習(xí)慣定義類名,但是一般推薦參考慣例來(lái)命名,并在整個(gè)系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn)中保持風(fēng)格一致,這一點(diǎn)對(duì)于團(tuán)隊(duì)合作尤其重要。例如:定義了類之后,可以用來(lái)實(shí)例化對(duì)象,并通過(guò)“對(duì)象名.成員”的方式來(lái)訪問(wèn)其中的數(shù)據(jù)成員或成員方法,例如下面的代碼:Python提供了一個(gè)關(guān)鍵字“pass”,類似于空語(yǔ)句,可以用在類和函數(shù)的定義中或者選擇結(jié)構(gòu)中。當(dāng)暫時(shí)沒(méi)有確定如何實(shí)現(xiàn)功能,或者為以后的軟件升級(jí)預(yù)留空間,或者其他類型功能時(shí),可以使用該關(guān)鍵字來(lái)“占位”。l self參數(shù)類的所有實(shí)例方法都必須至少有一個(gè)名為“self”的參數(shù),并且必須是方法的第一個(gè)形參(如果有多個(gè)形參的話),“self”參數(shù)代表將來(lái)要?jiǎng)?chuàng)建的對(duì)象本身。在類的實(shí)例方法中訪問(wèn)實(shí)例屬性時(shí)需要以“self”為前綴,但在外部通過(guò)對(duì)象名調(diào)用對(duì)象方法時(shí)并不需要傳遞這個(gè)參數(shù),如果在外部通過(guò)類名調(diào)用對(duì)象方法則需要顯式為self參數(shù)傳值。在Python中,在類中定義實(shí)例方法時(shí)將第一個(gè)參數(shù)定義為“self”只是一個(gè)習(xí)慣,而實(shí)際上類的實(shí)例方法中第一個(gè)參數(shù)的名字是可以變化的,而不必須使用“self”這個(gè)名字。l 類成員與實(shí)例成員這里主要指數(shù)據(jù)成員,或者廣義上的屬性??梢哉f(shuō)屬性有兩種,一種是實(shí)例屬性,另一種是類屬性。實(shí)例屬性一般是指在構(gòu)造函數(shù)_init_()中定義的,定義和使用時(shí)必須以self作為前綴;類屬性是在類中所有方法之外定義的數(shù)據(jù)成員。在主程序中(或類的外部),實(shí)例屬性屬于實(shí)例(對(duì)象),只能通過(guò)對(duì)象名訪問(wèn);而類屬性屬于類,可以通過(guò)類名或?qū)ο竺L問(wèn)。在類的方法中可以調(diào)用類本身的其他方法,也可以訪問(wèn)類屬性以及對(duì)象屬性。在Python中比較特殊的是,可以動(dòng)態(tài)地為類和對(duì)象增加成員,這一點(diǎn)是和很多面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言不同的,也是Python動(dòng)態(tài)類型特點(diǎn)的一種重要體現(xiàn)。l 私有成員與公有成員Python并沒(méi)有對(duì)私有成員提供嚴(yán)格的訪問(wèn)保護(hù)機(jī)制。在定義類的屬性時(shí),如果屬性名以兩個(gè)下劃線“_”開(kāi)頭則表示是私有屬性,否則是公有屬性。私有屬性在類的外部不能直接訪問(wèn),需要通過(guò)調(diào)用對(duì)象的公有成員方法來(lái)訪問(wèn),或者通過(guò)Python支持的特殊方式來(lái)訪問(wèn)。Python提供了訪問(wèn)私有屬性的特殊方式,可用于程序的測(cè)試和調(diào)試,對(duì)于成員方法也具有同樣的性質(zhì)。私有屬性是為了數(shù)據(jù)封裝和保密而設(shè)的屬性,一般只能在類的成員方法(類的內(nèi)部)中使用訪問(wèn),雖然Python支持一種特殊的方式來(lái)從外部直接訪問(wèn)類的私有成員,但是并不推薦您這樣做。公有屬性是可以公開(kāi)使用的,既可以在類的內(nèi)部進(jìn)行訪問(wèn),也可以在外部程序中使用。在Python中,以下劃線開(kāi)頭的變量名和方法名有特殊的含義,尤其是在類的定義中。用下劃線作為變量名和方法名前綴和后綴來(lái)表示類的特殊成員:_xxx:這樣的對(duì)象叫做保護(hù)成員,不能用from module import *導(dǎo)入,只有類對(duì)象和子類對(duì)象能訪問(wèn)這些成員;_xxx_:系統(tǒng)定義的特殊成員;_xxx:類中的私有成員,只有類對(duì)象自己能訪問(wèn),子類對(duì)象也不能訪問(wèn)到這個(gè)成員,但在對(duì)象外部可以通過(guò)“對(duì)象名._類名_xxx”這樣的特殊方式來(lái)訪問(wèn)。Python中不存在嚴(yán)格意義上的私有成員。6.2 方法在類中定義的方法可以粗略分為四大類:公有方法、私有方法、靜態(tài)方法和類方法。其中,公有方法、私有方法都屬于對(duì)象,私有方法的名字以兩個(gè)下劃線“_”開(kāi)始,每個(gè)對(duì)象都有自己的公有方法和私有方法,在這兩類方法中可以訪問(wèn)屬于類和對(duì)象的成員;公有方法通過(guò)對(duì)象名直接調(diào)用,私有方法不能通過(guò)對(duì)象名直接調(diào)用,只能在屬于對(duì)象的方法中通過(guò)“self”調(diào)用或在外部通過(guò)Python支持的特殊方式來(lái)調(diào)用。如果通過(guò)類名來(lái)調(diào)用屬于對(duì)象的公有方法,需要顯式為該方法的“self”參數(shù)傳遞一個(gè)對(duì)象名,用來(lái)明確指定訪問(wèn)哪個(gè)對(duì)象的數(shù)據(jù)成員。靜態(tài)方法和類方法都可以通過(guò)類名和對(duì)象名調(diào)用,但不能直接訪問(wèn)屬于對(duì)象的成員,只能訪問(wèn)屬于類的成員。一般將“cls”作為類方法的第一個(gè)參數(shù)名稱,但也可以使用其他的名字作為參數(shù),并且在調(diào)用類方法時(shí)不需要為該參數(shù)傳遞值。6.3 屬性Python 2.x和Python 3.x對(duì)屬性的實(shí)現(xiàn)和處理方式不一樣,內(nèi)部實(shí)現(xiàn)有較大的差異,使用時(shí)應(yīng)注意二者之間的區(qū)別。l Python 2.x中的屬性l Python 3.x中的屬性在Python 3.x中,屬性得到了較為完整的實(shí)現(xiàn),支持更加全面的保護(hù)機(jī)制。例如下面的代碼所示,如果設(shè)置屬性為只讀,則無(wú)法修改其值,也無(wú)法為對(duì)象增加與屬性同名的新成員,同時(shí),也無(wú)法刪除對(duì)象屬性。6.4 常用特殊方法Python類有大量的特殊方法,其中比較常見(jiàn)的是構(gòu)造函數(shù)和析構(gòu)函數(shù)。Python中類的構(gòu)造函數(shù)是_init_(),一般用來(lái)為數(shù)據(jù)成員設(shè)置初值或進(jìn)行其他必要的初始化工作,在創(chuàng)建對(duì)象時(shí)被自動(dòng)調(diào)用和執(zhí)行,可以通過(guò)為構(gòu)造函數(shù)定義默認(rèn)值參數(shù)來(lái)實(shí)現(xiàn)類似于其他語(yǔ)言中構(gòu)造函數(shù)重載的目的。如果用戶沒(méi)有設(shè)計(jì)構(gòu)造函數(shù),Python將提供一個(gè)默認(rèn)的構(gòu)造函數(shù)用來(lái)進(jìn)行必要的初始化工作。Python中類的析構(gòu)函數(shù)是_del_(),一般用來(lái)釋放對(duì)象占用的資源,在Python刪除對(duì)象和收回對(duì)象空間時(shí)被自動(dòng)調(diào)用和執(zhí)行。如果用戶沒(méi)有編寫(xiě)析構(gòu)函數(shù),Python將提供一個(gè)默認(rèn)的析構(gòu)函數(shù)進(jìn)行必要的清理工作。6.5 繼承機(jī)制繼承是為代碼復(fù)用和設(shè)計(jì)復(fù)用而設(shè)計(jì)的,是面向?qū)ο蟪绦蛟O(shè)計(jì)的重要特性之一。當(dāng)我們?cè)O(shè)計(jì)一個(gè)新類時(shí),如果可以繼承一個(gè)已有的設(shè)計(jì)良好的類然后進(jìn)行二次開(kāi)發(fā),無(wú)疑會(huì)大幅度減少開(kāi)發(fā)工作量。在繼承關(guān)系中,已有的、設(shè)計(jì)好的類稱為父類或基類,新設(shè)計(jì)的類稱為子類或派生類。派生類可以繼承父類的公有成員,但是不能繼承其私有成員。如果需要在派生類中調(diào)用基類的方法,可以使用內(nèi)置函數(shù)super()或者通過(guò)“基類名.方法名()”的方式來(lái)實(shí)現(xiàn)這一目的。Python支持多繼承,如果父類中有相同的方法名,而在子類中使用時(shí)沒(méi)有指定父類名,則Python解釋器將從左向右按順序進(jìn)行搜索。三、重點(diǎn)、難點(diǎn)提示(一)Python對(duì)象的可變性(二)屬性的定義與使用四、思考與練習(xí)編程實(shí)現(xiàn)教材上的示例習(xí)題6.1 / 6.2第七章 文件操作一、學(xué)習(xí)目的文本文件的基本操作;二進(jìn)制文件的基本操作;文件操作和目錄操作。本章計(jì)劃3學(xué)時(shí)。二、課程內(nèi)容7.1 文件基本操作文件對(duì)象名=open(文件名, 打開(kāi)方式, 緩沖區(qū))(1)文件名指定了被打開(kāi)的文件名稱。(2)打開(kāi)模式指定了打開(kāi)文件后的處理方式。(3)緩沖區(qū)指定了讀寫(xiě)文件的緩存模式。0表示不緩存,1表示緩存,如大于1則表示緩沖區(qū)的大小。默認(rèn)值是緩存模式。(4)open( )函數(shù)返回1個(gè)文件對(duì)象,該對(duì)象可以對(duì)文件進(jìn)行各種操作。7.2 文本文件基本操作使用with自動(dòng)關(guān)閉資源??梢栽诖a塊執(zhí)行完畢后還原進(jìn)入該代碼塊時(shí)的現(xiàn)場(chǎng)。不論何種原因跳出with塊,總能保證文件被正確關(guān)閉。7.3 二進(jìn)制文件操作案例精選數(shù)據(jù)庫(kù)文件、圖像文件、可執(zhí)行文件、音視頻文件、Office文檔等等均屬于二進(jìn)制文件。對(duì)于二進(jìn)制文件,不能使用記事本或其他文本編輯軟件進(jìn)行正常讀寫(xiě),也無(wú)法通過(guò)Python的文件對(duì)象直接讀取和理解二進(jìn)制文件的內(nèi)容。必須正確理解二進(jìn)制文件結(jié)構(gòu)和序列化規(guī)則,才能準(zhǔn)確地理解二進(jìn)制文件內(nèi)容并且設(shè)計(jì)正確的反序列化規(guī)則。所謂序列化,簡(jiǎn)單地說(shuō)就是把內(nèi)存中的數(shù)據(jù)在不丟失其類型信息的情況下轉(zhuǎn)成對(duì)象的二進(jìn)制形式的過(guò)程,對(duì)象序列化后的形式經(jīng)過(guò)正確的反序列化過(guò)程應(yīng)該能夠準(zhǔn)確無(wú)誤地恢復(fù)為原來(lái)的對(duì)象。Python中常用的序列化模塊有struct、pickle、json、marshal和shelve,其中pickle有C語(yǔ)言實(shí)現(xiàn)的cPickle,速度約提高1000倍,應(yīng)優(yōu)先考慮使用。l 使用pickle模塊l 使用struct模塊7.4 文件級(jí)操作如果僅需要對(duì)文件內(nèi)容進(jìn)行讀寫(xiě),可以使用7.1節(jié)中介紹的文件對(duì)象;如果需要處理文件路徑,可以使用os.path模塊中的對(duì)象和方法;如果需要使用命令行讀取文件內(nèi)容可以使用fileinput模塊;創(chuàng)建臨時(shí)文件和文件夾可以使用tempfile模塊;另外,Python 3.4的pathlib模塊提供了大量用于表示和處理文件系統(tǒng)路徑的類。l os與os.path模塊l shutil模塊7.5 目錄操作7.6 高級(jí)話題l 計(jì)算CRC32值(Python 2.7.x)l 計(jì)算CRC32值(Python 3.x版本)l 計(jì)算文本文件中最長(zhǎng)行的長(zhǎng)度l 計(jì)算MD5值(Python 2.7.x版本)l 判斷一個(gè)文件是否為GIF圖像文件l 比較兩個(gè)文本文件是否相同l 使用xlwt寫(xiě)入Excel文件l 使用xlrd讀取Excel文件l 使用Pywin32操作Excel文件l 檢查word文檔的連續(xù)重復(fù)字三、重點(diǎn)、難點(diǎn)提示(一)文件操作三步驟(二)二進(jìn)制文件讀寫(xiě)方式,序列化模塊pickle與struct(三)遍歷文件夾時(shí)遞歸的應(yīng)用四、思考與練習(xí)編程實(shí)現(xiàn)教材上的示例習(xí)題7.1 / 7.2 / 7.5librarian n. 圖書(shū)館館長(zhǎng);第八章 異常處理結(jié)構(gòu)與程序調(diào)試一、學(xué)習(xí)目的異常處理的基本概念;Python中的異常處理結(jié)構(gòu)。本章計(jì)劃1學(xué)時(shí)。二、課程內(nèi)容8.1 什么是異常語(yǔ)法錯(cuò)誤和邏輯錯(cuò)誤不屬于異常,但有些語(yǔ)法錯(cuò)誤往往會(huì)導(dǎo)致異常,例如由于大小寫(xiě)拼寫(xiě)錯(cuò)誤而訪問(wèn)不存在的對(duì)象。當(dāng)Python檢測(cè)到一個(gè)錯(cuò)誤時(shí),解釋器就會(huì)指出當(dāng)前流已無(wú)法繼續(xù)執(zhí)行下去,這時(shí)候就出現(xiàn)了異常。異常是指因?yàn)槌绦虺鲥e(cuò)而在正??刂屏饕酝獠扇〉男袨椤.惓7譃閮蓚€(gè)階段:第一個(gè)階段是引起異常發(fā)生的錯(cuò)誤;第二個(gè)階段是檢測(cè)并處理階段。不建議使用異常來(lái)代替常規(guī)的檢查,如if.else判斷。應(yīng)避免過(guò)多依賴于異常處理機(jī)制。當(dāng)程序出現(xiàn)錯(cuò)誤,python會(huì)自動(dòng)引發(fā)異常,也可以通過(guò)raise顯式地引發(fā)異常。8.2 Python中的異常類BaseException +- SystemExit +- KeyboardInterrupt +- GeneratorExit +- Exception +- StopIteration +- ArithmeticError | +- FloatingPointError | +- OverflowError | +- ZeroDivisionError +- AssertionError +- AttributeError +- BufferError +- EOFError +- ImportError +- LookupError | +- IndexError | +- KeyError +- MemoryError +- NameError | +- UnboundLocalError +- OSError | +- BlockingIOError | +- ChildProcessError | +- ConnectionError | | +- BrokenPipeError | | +- ConnectionAbortedError | | +- ConnectionRefusedError | | +- ConnectionResetError | +- FileExistsError | +- FileNotFoundError | +- InterruptedError | +- IsADirectoryError | +- NotADirectoryError | +- PermissionError | +- ProcessLookupError | +- TimeoutError +- ReferenceError +- RuntimeError | +- NotImplementedError +- SyntaxError | +- IndentationError | +- TabError +- SystemError +- TypeError +- ValueError | +- UnicodeError | +- UnicodeDecodeError | +- UnicodeEncodeError | +- UnicodeTranslateError +- Warning +- DeprecationWarning +- PendingDeprecationWarning +- RuntimeWarning +- SyntaxWarning +- UserWarning +- FutureWarning +- ImportWarning +- UnicodeWarning +- BytesWarning +- ResourceWarning*可以繼承Python內(nèi)置異常類來(lái)實(shí)現(xiàn)自定義的異常類。8.3 try.except.else結(jié)構(gòu)try子句中的代碼塊放置可能出現(xiàn)異常的語(yǔ)句,except子句中的代碼塊處理異常。如果try范圍內(nèi)捕獲了異常,就執(zhí)行except塊;如果try范圍內(nèi)沒(méi)有捕獲異常,就執(zhí)行else塊。8.4 斷言與上下文管理斷言與上下文管理是兩種比較特殊的異常處理方式,在形式上比異常處理結(jié)構(gòu)要簡(jiǎn)單一些。8.4.1 斷言斷言語(yǔ)句的語(yǔ)法是: assert expression, reason 當(dāng)判斷表達(dá)式expression為真時(shí),什么都不做;如果表達(dá)式為假,則拋出異常。 assert語(yǔ)句一般用于開(kāi)發(fā)程序時(shí)對(duì)特定必須滿足的條件進(jìn)行驗(yàn)證,僅當(dāng)_debug_為T(mén)rue時(shí)有效。當(dāng)Python腳本以-O選項(xiàng)編譯為字節(jié)碼文件時(shí),assert語(yǔ)句將被移除以提高運(yùn)行速度。8.4.2 上下文管理使用with自動(dòng)關(guān)閉資源,可以在代碼塊執(zhí)行完畢后還原進(jìn)入該代碼塊時(shí)的現(xiàn)場(chǎng)。不論何種原因跳出with塊,不論是否發(fā)生異常,總能保證文件被正確關(guān)閉,資源被正確釋放。with語(yǔ)句的語(yǔ)法如下:with context_expr as var:with塊 三、重點(diǎn)、難點(diǎn)提示(一)異常的概念與表現(xiàn)形式(二)常見(jiàn)異常處理結(jié)構(gòu)(三)使用IDLE調(diào)試代碼四、思考與練習(xí)編程實(shí)現(xiàn)教材上的示例第九章 GUI編程一、學(xué)習(xí)目的Python中GUI編程的基本方法;GUI中的常見(jiàn)組件。本章計(jì)劃2學(xué)時(shí)。二、課程內(nèi)容建立GUI程序的三大步驟:1)導(dǎo)入必需的wxPython包或其他包2)建立框架類:框架類的父類為wx.Frame,在框架類的構(gòu)造函數(shù)中必須調(diào)用父類的構(gòu)造函數(shù)。3)建立主程序:通常做4件事建立應(yīng)用程序?qū)ο?、建立框架類?duì)象、顯示框架、建立事件循環(huán)-執(zhí)行frame.Show(True)后,框架才看得見(jiàn)-執(zhí)行app.MainLoop( )后,框架才能處理事件。如需在窗體上增加其他控件,可在構(gòu)造函數(shù)中增加代碼如需處理事件,可增加框架類的成員函數(shù)。9.1 FrameFrame:框架(窗體),容器,可移動(dòng)、縮放,包含標(biāo)題欄、菜單等。是所有框架的父類。wxPython的ID參數(shù):可以明確給構(gòu)造函數(shù)傳遞一個(gè)正整數(shù),由程序員自行保證ID不重復(fù)并且沒(méi)有重用預(yù)定義的ID號(hào),如wx.ID_OK、wx.ID_CANCEL等ID號(hào)對(duì)應(yīng)的數(shù)值;9.2 Controls如需在窗體上增加其他控件,可在構(gòu)造函數(shù)中增加代碼。如需處理事件,可增加框架類的成員函數(shù)。常用的控件主要有按鈕、靜態(tài)文本標(biāo)簽、文本框、單選鈕、復(fù)選框、對(duì)話框、菜單等等l Button、StaticText、TextCtrll Menul ToolBar、StatusBarl 對(duì)話框l RadioButton、CheckBoxl RadioButton、CheckBoxl ComboBoxl ListBoxl TreeCtrl三、重點(diǎn)、難點(diǎn)提示(一)wxPython基礎(chǔ)知識(shí)(二)各類GUI控件的使用四、思考與練習(xí)編程實(shí)現(xiàn)教材上的示例習(xí)題9.1 / 9.2第十章 網(wǎng)絡(luò)程序設(shè)計(jì)一、學(xué)習(xí)目的UDP和TCP編程;網(wǎng)頁(yè)內(nèi)容的讀取;使用Python開(kāi)發(fā)網(wǎng)站的基本方法。本章計(jì)劃2學(xué)時(shí)。二、課程內(nèi)容Socket對(duì)象是網(wǎng)絡(luò)通信的基礎(chǔ),相當(dāng)于在發(fā)送端和接收端之間建立了一個(gè)管道來(lái)實(shí)現(xiàn)相互傳遞數(shù)據(jù)。Python對(duì)Socket進(jìn)行了二次封裝,簡(jiǎn)化了程序的開(kāi)發(fā)步驟,提高了開(kāi)發(fā)效率。Python提供了socket模塊,提供了socket接口的訪問(wèn)。Python還提供了大量模塊可以對(duì)網(wǎng)頁(yè)內(nèi)容進(jìn)行抓取和處理。10.1 計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)知識(shí)l 網(wǎng)絡(luò)體系結(jié)構(gòu),分層設(shè)計(jì)的好處l ftp、http、smtp、pop3、telnetl TCP、UDP、端口號(hào)l IP地址l MAC地址10.2 UDP和TCP編程l UDP協(xié)議編程socket(family,type,proto)創(chuàng)建一個(gè)socket對(duì)象,其中family為socket.AF_INET表示IPV4,socket.AF_INET6表示IPV6;type為SOCK_STREAM表示TCP協(xié)議,SOCK_DGRAM表示UDP協(xié)議。sendto(string,address)把string指定的內(nèi)容發(fā)送給address指定的地址,address是一個(gè)元組,格式為(IP地址,端口號(hào))recvfrom(bufsize,flags) 接收數(shù)據(jù)l TCP編程connect(address)連接遠(yuǎn)程計(jì)算機(jī)send(bytes,flags) 發(fā)送數(shù)據(jù)recv(bufsize,flags)接收數(shù)據(jù)bind(address)綁定地址listen(backlog)開(kāi)始監(jiān)聽(tīng),等待客戶端連接accept() 響應(yīng)客戶端的請(qǐng)求10.3 簡(jiǎn)單嗅探器實(shí)現(xiàn)10.4 網(wǎng)頁(yè)內(nèi)容讀取在Python2中提供了urllib和urllib2兩個(gè)模塊用來(lái)讀取網(wǎng)頁(yè)內(nèi)容,在Python3中重新進(jìn)行了整合,只提供urllib一個(gè)模塊。Python2中的urllib模塊在Python3中被分成了urllib.request, urllib.parse和urllib.error三部分,目前只支持HTTP, (versions 0.9 and 1.0), FTP和local files三種協(xié)議。urllib2模塊在Python3中被合并到urllib.request和urllib.error中去了。10.5 使用Python開(kāi)發(fā)網(wǎng)站Python是一門(mén)腳本語(yǔ)言,完全可以像PHP、VBScript等腳本語(yǔ)言一樣用來(lái)開(kāi)發(fā)網(wǎng)頁(yè)以及CGI程序。既可以直接編寫(xiě)Python腳本程序來(lái)生成網(wǎng)頁(yè),也可以把Python程序嵌入“.asp”文件,無(wú)論使用哪種方式,都可以使用服務(wù)器上已安裝的所有Python擴(kuò)展模塊,同時(shí)也要遵守縮進(jìn)以及
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 上漿黃麻紗行業(yè)行業(yè)發(fā)展趨勢(shì)及投資戰(zhàn)略研究分析報(bào)告
- 沖壓模具開(kāi)發(fā)合同范本
- 人工挖方合同范本
- 關(guān)于安裝監(jiān)控合同范本
- 代銷(xiāo)合同范例5篇
- 養(yǎng)殖基地養(yǎng)雞合同范本
- 無(wú)合同勞動(dòng)仲裁申請(qǐng)書(shū)范本
- 企業(yè)房產(chǎn)贈(zèng)與合同范本
- 借錢(qián)協(xié)議合同范本
- 公司電費(fèi)簡(jiǎn)易合同范本
- 臨床提高膿毒性休克患者1h集束化措施落實(shí)率PDCA品管圈
- DB53∕T 1269-2024 改性磷石膏用于礦山廢棄地生態(tài)修復(fù)回填技術(shù)規(guī)范
- JBT 14727-2023 滾動(dòng)軸承 零件黑色氧化處理 技術(shù)規(guī)范 (正式版)
- 新概念第一冊(cè)單詞匯總帶音標(biāo)EXCEL版
- 作用于血液及造血器官的藥 作用于血液系統(tǒng)藥物
- 春節(jié)節(jié)后施工復(fù)工安全培訓(xùn)
- GB/T 3478.1-1995圓柱直齒漸開(kāi)線花鍵模數(shù)基本齒廓公差
- GB/T 1346-2001水泥標(biāo)準(zhǔn)稠度用水量、凝結(jié)時(shí)間、安定性檢驗(yàn)方法
- FZ/T 25001-2012工業(yè)用毛氈
- 中國(guó)工運(yùn)史知識(shí)競(jìng)答附答案
- 瑞幸咖啡SWOT分析
評(píng)論
0/150
提交評(píng)論