關(guān)于我們
書(shū)單推薦
新書(shū)推薦
|
Python程序設(shè)計(jì)(第3版 微課版)
《Python程序設(shè)計(jì)(第3版 微課版)》共18章,主要內(nèi)容如下:第1章介紹Python基礎(chǔ)知識(shí)與概念;第2章講解列表、元組、字典、集合等常用序列結(jié)構(gòu);第3章講解Python選擇結(jié)構(gòu)與循環(huán)結(jié)構(gòu);第4章講解字符串基本操作方法與正則表達(dá)式模塊re的用法;第5章講解函數(shù)設(shè)計(jì)與使用;第6章講解面向?qū)ο缶幊逃嘘P(guān)的知識(shí);第7章講解文本文件與二進(jìn)制文件的讀寫(xiě),以及文件與目錄操作,Office文件操作;第8章講解異常處理結(jié)構(gòu)以及Python程序的調(diào)試與測(cè)試方法;第9章講解標(biāo)準(zhǔn)庫(kù)tkinter的GUI應(yīng)用;第10章講解網(wǎng)絡(luò)編程,網(wǎng)頁(yè)內(nèi)容讀;第11章講解安卓平臺(tái)的Python程序設(shè)計(jì);第12章講解注冊(cè)表編程以及系統(tǒng)運(yùn)維編程;第13章講解多線程與多進(jìn)程編程;第14章介紹SQLite、Access、MS SQL Server、MySQL訪問(wèn)方法;第15章講解圖形圖像編程、音樂(lè)編程、視頻處理以及語(yǔ)音識(shí)別;第16章介紹逆向工程與軟件分析原理、IDAPython編程、Immunity Debugger以及Windows平臺(tái)軟件調(diào)試原理;第17章講解NumPy、SciPy、Matplotlib、pandas與statistics在科學(xué)計(jì)算和可視化、數(shù)據(jù)處理、統(tǒng)計(jì)與分析中的應(yīng)用;第18章講解安全哈希算法、對(duì)稱密鑰密碼算法DES與AES以及非對(duì)稱密鑰密碼算法RSA與DSA。
《Python程序設(shè)計(jì)(第3版 微課版)》既可以作為計(jì)算機(jī)及相關(guān)專業(yè)的教材,也可以作為Python愛(ài)好者的參考書(shū)。
前言
Python由Guido van Rossum于1989年底開(kāi)始設(shè)計(jì)與開(kāi)發(fā),第一個(gè)公開(kāi)發(fā)行版本發(fā)行于1991年。Python推出不久就迅速得到了各行業(yè)人士的青睞,經(jīng)過(guò)30年的發(fā)展,Python已經(jīng)滲透到計(jì)算機(jī)科學(xué)與技術(shù)、統(tǒng)計(jì)分析、移動(dòng)終端開(kāi)發(fā)、科學(xué)計(jì)算可視化、逆向工程與軟件分析、圖形編程與圖像處理、人工智能、游戲設(shè)計(jì)與策劃、網(wǎng)站開(kāi)發(fā)、數(shù)據(jù)采集、大數(shù)據(jù)處理、密碼學(xué)、系統(tǒng)運(yùn)維、音樂(lè)編程、計(jì)算機(jī)輔助教育、醫(yī)藥輔助設(shè)計(jì)、天文信息處理、化學(xué)、生物等幾乎所有專業(yè)和領(lǐng)域。著名搜索引擎Google的核心代碼使用Python實(shí)現(xiàn),迪士尼公司的動(dòng)畫(huà)制作與生成采用Python實(shí)現(xiàn),大部分UNIX和Linux都內(nèi)建了Python環(huán)境支持,豆瓣網(wǎng)使用Python作為主體開(kāi)發(fā)語(yǔ)言進(jìn)行網(wǎng)站架構(gòu)和有關(guān)應(yīng)用的設(shè)計(jì)與開(kāi)發(fā),網(wǎng)易大量網(wǎng)絡(luò)游戲的服務(wù)器端代碼超過(guò)70%采用Python進(jìn)行設(shè)計(jì)與開(kāi)發(fā),易度的PaaA企業(yè)應(yīng)用云端開(kāi)發(fā)平臺(tái)和百度云計(jì)算平臺(tái)BAE也都大量采用了Python語(yǔ)言,美國(guó)宇航局使用Python實(shí)現(xiàn)了CAD/CAE/PDM庫(kù)及模型管理系統(tǒng),雅虎公司使用Python建立全球范圍的站點(diǎn)群,微軟公司的集成開(kāi)發(fā)環(huán)境Visual Studio 2015開(kāi)始默認(rèn)支持Python語(yǔ)言,開(kāi)源ERP系統(tǒng)Odoo完全采用Python語(yǔ)言開(kāi)發(fā),引力波數(shù)據(jù)是用Python進(jìn)行處理和分析的,類似的案例數(shù)不勝數(shù)。 早在多年前Python就已經(jīng)成為卡內(nèi)基梅隆大學(xué)、麻省理工學(xué)院、加州大學(xué)伯克利分校、哈佛大學(xué)等國(guó)外很多大學(xué)計(jì)算機(jī)專業(yè)或非計(jì)算機(jī)專業(yè)的程序設(shè)計(jì)入門(mén)教學(xué)語(yǔ)言,目前國(guó)內(nèi)也有不少學(xué)校的多個(gè)專業(yè)陸續(xù)開(kāi)設(shè)了Python程序設(shè)計(jì)課程。2011年1月Python語(yǔ)言被TIOBE網(wǎng)站評(píng)為2010年度語(yǔ)言;2014年12月IEEE Spectrum推出的編程語(yǔ)言排行榜中,Python取得了第5位的好名次;2017年和2018年連續(xù)兩年IEEE Spectrum把Python排在第一位;2019年7月TIOBE編程語(yǔ)言排行榜上Python躍居第3位,僅次于Java、C,已經(jīng)成為腳本語(yǔ)言的標(biāo)準(zhǔn)。 Python是一門(mén)免費(fèi)、開(kāi)源的跨平臺(tái)高級(jí)動(dòng)態(tài)編程語(yǔ)言,支持命令式編程、函數(shù)式編程,完全支持面向?qū)ο蟪绦蛟O(shè)計(jì),擁有大量功能強(qiáng)大的內(nèi)置對(duì)象、標(biāo)準(zhǔn)庫(kù)和擴(kuò)展庫(kù)以及眾多狂熱的支持者,使得各領(lǐng)域的科研人員、策劃人員甚至管理人員能夠快速實(shí)現(xiàn)和驗(yàn)證自己的思路與創(chuàng)意。在有些編程語(yǔ)言中需要編寫(xiě)大量代碼才能實(shí)現(xiàn)的功能,在Python中直接調(diào)用內(nèi)置函數(shù)或標(biāo)準(zhǔn)庫(kù)方法即可實(shí)現(xiàn)。Python用戶只需要把主要精力放在業(yè)務(wù)邏輯的設(shè)計(jì)與實(shí)現(xiàn)上,在開(kāi)發(fā)效率和運(yùn)行效率之間達(dá)到了完美的平衡,其精妙之處令人贊嘆。 Python是一門(mén)快樂(lè)、優(yōu)雅的語(yǔ)言。與C語(yǔ)言系列和Java等語(yǔ)言相比,Python大幅度降低了學(xué)習(xí)與使用的難度。Python易學(xué)易用,語(yǔ)法簡(jiǎn)潔清晰,代碼可讀性強(qiáng),編程模式非常符合人類思維方式和習(xí)慣。經(jīng)常瀏覽Python社區(qū)的優(yōu)秀代碼、Python標(biāo)準(zhǔn)庫(kù)和擴(kuò)展庫(kù)文檔甚至源代碼,適當(dāng)了解其內(nèi)部工作原理,可以幫助讀者編寫(xiě)出更加優(yōu)雅的Python程序。 如果讀者有其他程序設(shè)計(jì)語(yǔ)言的基礎(chǔ),那么在學(xué)習(xí)和使用Python的過(guò)程中,一定不要把用其他語(yǔ)言編程的習(xí)慣和風(fēng)格帶到Python中來(lái),那樣不僅會(huì)使得代碼變得非常冗長(zhǎng)、煩瑣,還可能會(huì)嚴(yán)重影響代碼的效率。應(yīng)該盡量嘗試從最自然、最簡(jiǎn)潔的角度出發(fā)去思考和解決問(wèn)題,這樣才能寫(xiě)出更加優(yōu)雅、更加Pythonic的代碼。 本書(shū)內(nèi)容組織 對(duì)于Python程序員來(lái)說(shuō),熟練運(yùn)用優(yōu)秀、成熟的擴(kuò)展庫(kù)可以快速實(shí)現(xiàn)業(yè)務(wù)邏輯和創(chuàng)意,而Python語(yǔ)言基礎(chǔ)知識(shí)和基本數(shù)據(jù)結(jié)構(gòu)的熟練掌握則是理解和運(yùn)用其他擴(kuò)展庫(kù)的必備條件,并且在實(shí)際開(kāi)發(fā)中建議優(yōu)先使用Python內(nèi)置對(duì)象和標(biāo)準(zhǔn)庫(kù)對(duì)象實(shí)現(xiàn)預(yù)定功能。本書(shū)前8章使用大量篇幅介紹Python編程基礎(chǔ)知識(shí),通過(guò)大量案例演示Python語(yǔ)言的精妙與強(qiáng)大。從第9章開(kāi)始介紹大量標(biāo)準(zhǔn)庫(kù)和擴(kuò)展庫(kù)在GUI編程、網(wǎng)絡(luò)編程、移動(dòng)終端編程、Windows系統(tǒng)編程、多線程與多進(jìn)程編程、數(shù)據(jù)庫(kù)編程、圖形圖像編程、逆向工程與軟件分析、科學(xué)計(jì)算可視化、密碼學(xué)編程等多個(gè)領(lǐng)域的應(yīng)用。全書(shū)共18章,主要內(nèi)容組織如下。 第1章基礎(chǔ)知識(shí)。介紹如何選擇Python版本,Python對(duì)象模型,數(shù)字、字符串等基本數(shù)據(jù)類型,運(yùn)算符與表達(dá)式,內(nèi)置函數(shù),基本輸入輸出,Python程序文件名,Python代碼編寫(xiě)規(guī)范等。 第2章Python序列。講解序列常用的方法和基本操作,成員測(cè)試運(yùn)算符,切片操作,列表基本操作與常用方法,列表推導(dǎo)式,元組與生成器推導(dǎo)式,序列解包,字典、集合基本操作與常用方法,字典推導(dǎo)式與集合推導(dǎo)式,以及如何使用列表實(shí)現(xiàn)棧、隊(duì)列、二叉樹(shù)、有向圖等復(fù)雜數(shù)據(jù)結(jié)構(gòu)。 第3章選擇與循環(huán)。講解Python選擇結(jié)構(gòu)、for循環(huán)與while循環(huán),帶else子句的循環(huán)結(jié)構(gòu),break和continue語(yǔ)句,選擇結(jié)構(gòu)與循環(huán)結(jié)構(gòu)的綜合運(yùn)用。 第4章字符串與正則表達(dá)式。講解字符串編碼格式,字符串格式化、替換、分隔、連接、查找、排版等基本操作,正則表達(dá)式語(yǔ)法、正則表達(dá)式對(duì)象、子模式與Match對(duì)象,以及Python正則表達(dá)式模塊re的應(yīng)用。 第5章函數(shù)設(shè)計(jì)與使用。講解函數(shù)的定義與使用,關(guān)鍵參數(shù)、默認(rèn)值參數(shù)、長(zhǎng)度可變參數(shù)等不同參數(shù)類型,全局變量與局部變量,參數(shù)傳遞時(shí)的序列解包,return語(yǔ)句,lambda表達(dá)式,以及函數(shù)式編程、生成器與可調(diào)用對(duì)象等若干高級(jí)話題。 第6章面向?qū)ο蟪绦蛟O(shè)計(jì)。講解類的定義與使用,self與cls參數(shù),類成員與實(shí)例成員,私有成員與公有成員,繼承與派生,特殊方法與運(yùn)算符重載等內(nèi)容。 第7章文件操作。講解文件操作基本知識(shí),Python文件對(duì)象,文本文件讀寫(xiě)操作,二進(jìn)制文件讀寫(xiě)與對(duì)象序列化,文件復(fù)制、移動(dòng)、重命名、文件類型檢測(cè)、文件完整性檢查、壓縮與解壓縮、文件夾大小統(tǒng)計(jì)、文件夾增量備份、刪除指定類型的文件和Office文件操作等內(nèi)容。 第8章異常處理結(jié)構(gòu)與程序調(diào)試、測(cè)試。講解Python異常類層次結(jié)構(gòu)與自定義異常類,多種不同形式的異常處理結(jié)構(gòu),使用IDLE和pdb模塊調(diào)試Python程序,Python單元測(cè)試相關(guān)知識(shí)。 第9章GUI編程。講解如何使用標(biāo)準(zhǔn)庫(kù)tkinter進(jìn)行GUI編程,通過(guò)大量實(shí)際案例演示基本組件的用法。 第10章網(wǎng)絡(luò)程序設(shè)計(jì)。講解計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)知識(shí),TCP、UDP編程,網(wǎng)頁(yè)內(nèi)容讀取與網(wǎng)頁(yè)爬蟲(chóng)。 第11章安卓平臺(tái)的Python編程。介紹QPython和QPython3開(kāi)發(fā)環(huán)境的應(yīng)用,講解安卓平臺(tái)的Python程序設(shè)計(jì)。 第12章Windows系統(tǒng)編程。講解注冊(cè)表編程、GUI編程、系統(tǒng)版本判斷,將Python程序打包為exe可執(zhí)行文件,在Python中調(diào)用外部程序,以及Python在系統(tǒng)運(yùn)維中的應(yīng)用。 第13章多線程與多進(jìn)程編程。講解Python標(biāo)準(zhǔn)庫(kù)threading和multiprocessing在多線程編程與多進(jìn)程編程中的應(yīng)用,以及多線程與多進(jìn)程之間的數(shù)據(jù)共享與同步控制。 第14章數(shù)據(jù)庫(kù)編程。介紹SQLite數(shù)據(jù)庫(kù)及其相關(guān)概念,Connection對(duì)象、Cursor對(duì)象、Row對(duì)象,以及使用Python擴(kuò)展庫(kù)操作Access、MS SQL Server、MySQL等數(shù)據(jù)庫(kù)。 第15章多媒體編程。講解擴(kuò)展庫(kù)PyOpenGL在計(jì)算機(jī)圖形學(xué)編程中的應(yīng)用,擴(kuò)展庫(kù)pillow在圖像編程中的應(yīng)用,pygame、SciPy在音樂(lè)編程中的應(yīng)用,opencv在視頻處理中的應(yīng)用以及speech在語(yǔ)音識(shí)別中的應(yīng)用。 第16章逆向工程與軟件分析。介紹逆向工程與軟件分析的原理和相關(guān)插件,IDAPython與Immunity Debugger在軟件分析中的應(yīng)用,以及Windows平臺(tái)軟件調(diào)試原理。 第17章數(shù)據(jù)分析、科學(xué)計(jì)算與可視化。講解擴(kuò)展庫(kù)NumPy、SciPy、Matplotlib在科學(xué)計(jì)算與可視化領(lǐng)域的應(yīng)用,以及擴(kuò)展庫(kù)pandas與標(biāo)準(zhǔn)庫(kù)statistics在數(shù)據(jù)處理、統(tǒng)計(jì)與分析中的應(yīng)用。 第18章密碼學(xué)編程。以pycryptodome、rsa、hashlib等模塊為主講解安全哈希算法、對(duì)稱密鑰密碼算法DES與AES,以及非對(duì)稱密鑰密碼算法RSA與DSA的應(yīng)用。 本書(shū)信息量大,知識(shí)點(diǎn)緊湊,案例豐富,實(shí)用性強(qiáng)。全書(shū)100多個(gè)涉及不同行業(yè)領(lǐng)域的實(shí)用案例,沒(méi)有多余的文字、程序輸出結(jié)果或軟件安裝截圖,充分利用寶貴的篇幅來(lái)講解盡可能多的知識(shí)。本書(shū)作者具有20年程序設(shè)計(jì)教學(xué)經(jīng)驗(yàn),講授過(guò)匯編語(yǔ)言、C/C++/C#、Java、PHP、Python等多門(mén)程序設(shè)計(jì)語(yǔ)言,編寫(xiě)過(guò)大量的應(yīng)用程序。本書(shū)內(nèi)容結(jié)合作者多年教學(xué)與開(kāi)發(fā)過(guò)程中積累的許多經(jīng)驗(yàn)和案例,并巧妙地糅進(jìn)了相應(yīng)的章節(jié)。 本書(shū)對(duì)Python內(nèi)部工作原理進(jìn)行了一定深度的剖析,95%以上的案例均使用Python 3.5、3.6和3.7實(shí)現(xiàn),代碼同樣適用于Python 3.8以及更高版本實(shí)現(xiàn)。書(shū)中適當(dāng)介紹了Python代碼優(yōu)化和安全編程的有關(guān)知識(shí),可以滿足不同層次讀者的需要。 本書(shū)適用讀者 本書(shū)可以作為(但不限于): (1) 計(jì)算機(jī)專業(yè)本科生Python程序設(shè)計(jì)教材或研究生必讀書(shū)目。本科生建議72學(xué)時(shí)以上,講授本書(shū)全部章節(jié)。 (2) 數(shù)字媒體技術(shù)、軟件工程、網(wǎng)絡(luò)工程、信息安全、通信工程、電子、自動(dòng)化及其他工科專業(yè)本科生或研究生Python程序設(shè)計(jì)教材。建議64學(xué)時(shí),講授前9章,再根據(jù)專業(yè)特點(diǎn)與需要在其他章節(jié)中選講3~5章。 (3) 會(huì)計(jì)、經(jīng)濟(jì)、金融、管理、心理學(xué)、統(tǒng)計(jì)以及其他非工科專業(yè)研究生或本科生Python程序設(shè)計(jì)教材。建議64學(xué)時(shí),講授前8章中不帶星號(hào)的內(nèi)容,第9章的案例選講3~4個(gè),再根據(jù)專業(yè)特點(diǎn)與需要在其他章節(jié)中選講2~3章,其余章節(jié)由學(xué)生根據(jù)興趣自學(xué)。 (4) 非計(jì)算機(jī)相關(guān)專業(yè)本科生公共基礎(chǔ)課Python程序設(shè)計(jì)教材。建議48學(xué)時(shí)并邊講邊練,講授前8章中不帶星號(hào)的章節(jié),再根據(jù)需要在其他章節(jié)中選講2~3章,其余章節(jié)可由學(xué)生根據(jù)興趣自學(xué)。 (5) 專科院;蚵殬I(yè)技術(shù)學(xué)院Python程序設(shè)計(jì)教材。建議96學(xué)時(shí),講授前9章中不帶星號(hào)的內(nèi)容以及第10、13、14、17章。 (6) Python培訓(xùn)用書(shū)。建議時(shí)間為一周,講授前8章,再根據(jù)需要選講3~5章。 (7) 具有一定Python基礎(chǔ)的讀者進(jìn)階首選學(xué)習(xí)資料。 (8) 涉及Python開(kāi)發(fā)的程序員、策劃人員、科研人員和管理人員閱讀書(shū)目。 (9) 打算利用業(yè)余時(shí)間學(xué)習(xí)一門(mén)快樂(lè)的程序設(shè)計(jì)語(yǔ)言并編寫(xiě)幾個(gè)小程序來(lái)娛樂(lè)的讀者首選學(xué)習(xí)資料。 (10) 少數(shù)對(duì)編程具有濃厚興趣和天賦的中學(xué)生課外閱讀資料。 教學(xué)資源 本書(shū)提供全套教學(xué)課件、源代碼、課后習(xí)題答案與分析、考試題庫(kù)以及教學(xué)大綱,配套資源可以登錄清華大學(xué)出版社官方網(wǎng)站(www.tup.com.cn)下載或與作者聯(lián)系索取,作者電子郵箱地址為dongfuguo2005@126.com,微信公眾號(hào)為“Python小屋”。 由于時(shí)間倉(cāng)促,作者水平有限,書(shū)中難免存在紕漏,不足之處還請(qǐng)同行指正并通過(guò)作者聯(lián)系方式進(jìn)行反饋與交流。作者將不定期在公眾號(hào)和微信發(fā)布和更新勘誤表,并通過(guò)QQ和微信答復(fù)讀者的疑問(wèn)。 感謝 首先感謝父母的養(yǎng)育之恩,在當(dāng)年那么艱苦的條件下還堅(jiān)決支持我讀書(shū),沒(méi)有讓我像其他同齡的孩子一樣輟學(xué)。感謝姐姐、姐夫多年來(lái)對(duì)我的愛(ài)護(hù)以及在老家對(duì)父母的照顧,感謝善良的弟弟、弟媳在老家對(duì)父母的照顧,正是有了你們,我才能在遠(yuǎn)離家鄉(xiāng)的城市安心工作。感謝我的妻子在生活中對(duì)我的大力支持,也感謝懂事的女兒在我工作的時(shí)候能夠在旁邊安靜地讀書(shū)而盡量不打擾我,在定稿前和媽媽一起幫我閱讀全書(shū)并檢查出了幾個(gè)錯(cuò)別字。 感謝每一位讀者,感謝您在茫茫書(shū)海中選擇了本書(shū),衷心祝愿您能夠從本書(shū)中受益,學(xué)到您需要的知識(shí)!同時(shí)也期待每一位讀者的熱心反饋,隨時(shí)歡迎您指出書(shū)中的不足! 本書(shū)在編寫(xiě)出版過(guò)程中得到清華大學(xué)出版社的大力支持和幫助,在此表示衷心的感謝。 董付國(guó)定稿于山東煙臺(tái) 2020年4月
董付國(guó),2000年參加工作,具有豐富的編程經(jīng)驗(yàn)和17年的教學(xué)經(jīng)驗(yàn),講授過(guò)多種程序設(shè)計(jì)語(yǔ)言,多次指導(dǎo)學(xué)生參加各類競(jìng)賽并取得了較好的名次,曾使用C、C++、C#、PHP、Python編寫(xiě)過(guò)大量應(yīng)用程序。近10年來(lái)發(fā)表學(xué)術(shù)論文30余篇,超過(guò)20篇被EI檢索,多次參加高水平學(xué)術(shù)會(huì)議,先后出版《Python程序設(shè)計(jì)》、《Python程序設(shè)計(jì)基礎(chǔ)》、《Python程序設(shè)計(jì)(第2版)》、《Python可以這樣學(xué)》、《Python程序設(shè)計(jì)開(kāi)發(fā)寶典》和《中學(xué)生可以這樣學(xué)Python》、《玩轉(zhuǎn)Python輕松過(guò)二級(jí)》、《Python程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)書(shū)》系列教材。
目錄
你還可能感興趣
我要評(píng)論
|