發表於2024-11-13
內容與Python新版本同步。麵嚮Python 3.5.x、Python 3.6.x及更新版本,重點關注內置對象和標準庫對象的高級用法以及比較前沿的一些新技術。
語言精練、代碼優雅。深入剖析Python編程模式,使用*簡練的語言和代碼介紹Python高級用法,完美詮釋Pythonic的真正含義。
案例豐富、注釋量大、實用性強。精選多個領域中的經典案例,幾乎每段重要代碼都配有大量注釋,讓讀者能夠在短時間內理解代碼思路和要點,大幅度縮短閱讀和學習時間,由淺入深,層層遞進,平滑學習麯綫。
《Python程序設計開發寶典》共13章,麵嚮Python3.5.x、Python3.6.x和Python3.7.x,重點關注Python內置對象和標準庫對象的高級應用以及比較前沿的一些新技術,偶爾涉及一點擴展庫用法。第1章介紹Python語言編程規範與代碼優化建議、開發環境配置、程序僞編譯與打包。第2章詳解運算符與內置函數的用法。第3章詳解各種序列對象、推導式、切片和序列解包。第4章詳解選擇結構和循環結構,關鍵字else、break與continue。第5章詳解函數的基本用法,可調用對象與修飾器、函數參數、變量的作用域、生成器函數、lambda錶達式、函數柯裏化、泛型函數、協程函數和迴調函數。第6章詳解類的定義、不同類型的成員、依賴注入技術和運算符重載。第7章詳解字符串編碼與格式化方法、字符串對象方法、文本排版與壓縮、漢字拼音有關的技術。第8章詳解正則錶達式語法、re模塊、正則錶達式對象與match對象。第9章詳解文件對象用法、文件內容操作。第10章詳解文件與文件夾操作。第11章詳解異常處理結構、文檔測試與單元測試、覆蓋測試與軟件性能測試、代碼調試技術。第12章詳解不同類型的並行處理技術。第13章詳解asyncio提供的網絡通信功能。
《Python程序設計開發寶典》不但可以作為Python程序設計教材,還可作為Python開發工程師的指導用書。
董付國 副教授。自2000年參加工作以來,先後講授過匯編語言、C/C++/C#、Java和Python等多門編程語言,以及計算機組成原理、計算機網絡、數據庫原理、數據結構、操作係統、計算機安全、網絡安全、計算機圖形學、數字圖像處理、遊戲策劃等多門課程,多次獲得校級優秀教學成果奬一等奬,齣版《Python程序設計》、《Python程序設計基礎》、《Python程序設計(第2版)》係列教材,開發過多套涉及不同領域的管理係統,在國內外高水平學術期刊與會議上發錶論文40餘篇,其中近30篇被EI檢索。學習工作之餘*大的愛好是打太極拳。
目錄
第1章管中窺豹: Python概述1
1.1Python是這樣一種語言1
1.2Python版本之爭1
1.3Python編程規範與代碼優化建議2
1.4Python虛擬開發環境的搭建4
1.5Eclipse+PyDev環境搭建和使用4
1.6安裝擴展庫的幾種方法6
1.7標準庫與擴展庫中對象的導入與使用7
1.7.1import 模塊名 [as 彆名]8
1.7.2from模塊名import對象名[as彆名]8
1.7.3from 模塊名 import��9
1.7.4模塊導入時的搜索路徑10
1.8編寫與發布自己的包10
1.9Python程序僞編譯與打包12
1.10從命令行參數和配置文件獲取信息14
第2章萬丈高樓平地起: 運算符、錶達式與內置對象16
2.1Python常用內置對象16
2.1.1常量與變量17
2.1.2數字18
2.1.3字符串21
2.1.4列錶、元組、字典、集閤22
2.2Python運算符與錶達式23
2.2.1算術運算符24
2.2.2關係運算符25
2.2.3成員測試運算符in與同一性測試運算符is26
2.2.4位運算符與集閤運算符27
2.2.5邏輯運算符28
2.2.6矩陣乘法運算符@29〖1〗〖2〗Python程序設計開發寶典〖1〗目錄〖2〗2.2.7補充說明29
2.3Python關鍵字簡要說明30
2.4Python常用內置函數用法精要31
2.4.1類型轉換與類型判斷34
2.4.2最值與求和38
2.4.3基本輸入輸齣40
2.4.4排序與逆序42
2.4.5枚舉與迭代43
2.4.6map()、reduce()、filter()45
2.4.7range()48
2.4.8zip()48
2.4.9eval()、exec()49
第3章玄之又玄,眾妙之門: 詳解Python序列結構51
3.1列錶: 打瞭激素的數組51
3.1.1列錶創建與刪除52
3.1.2列錶元素訪問53
3.1.3列錶常用方法54
3.1.4列錶對象支持的運算符59
3.1.5內置函數對列錶的操作61
3.1.6使用列錶模擬嚮量運算62
3.1.7列錶推導式語法與應用案例63
3.1.8切片操作的強大功能70
3.2元組: 輕量級列錶73
3.2.1元組創建與元素訪問73
3.2.2元組與列錶的異同點74
3.2.3生成器推導式75
3.3字典: 反映對應關係的映射類型76
3.3.1字典創建與刪除77
3.3.2字典元素的訪問77
3.3.3元素的添加、修改與刪除79
3.3.4標準庫collections中與字典有關的類80
3.4集閤: 元素之間不允許重復81
3.4.1集閤對象的創建與刪除81
3.4.2集閤操作與運算82
3.4.3不可變集閤frozenset84
3.4.4集閤應用案例84
3.5序列解包的多種形式和用法86
3.6標準庫中的其他常用數據類型88
3.6.1枚舉類型88
3.6.2數組類型89
3.6.3隊列90
3.6.4具名元組92
3.6.5堆92
第4章反者,道之動: 程序控製結構94
4.1條件錶達式94
4.2選擇結構96
4.2.1單分支選擇結構96
4.2.2雙分支選擇結構97
4.2.3多分支選擇結構98
4.2.4選擇結構的嵌套99
4.2.5構建跳轉錶實現多分支選擇結構100
4.3循環結構100
4.3.1for循環與while循環100
4.3.2break與continue語句101
4.3.3循環代碼優化技巧102
4.4精彩案例賞析103
第5章代碼復用技術(一): 函數111
5.1函數定義與使用111
5.1.1基本語法111
5.1.2函數嵌套定義、可調用對象與修飾器113
5.1.3函數對象成員的動態性117
5.1.4函數遞歸調用117
5.2函數參數118
5.2.1位置參數120
5.2.2默認值參數120
5.2.3關鍵參數122
5.2.4可變長度參數122
5.2.5強製函數的某些參數必須以關鍵參數形式進行傳值123
5.2.6強製函數的所有參數必須以位置參數形式進行傳值124
5.2.7傳遞參數時的序列解包125
5.2.8標注函數參數與返迴值類型126
5.3變量作用域127
5.3.1全局變量與局部變量127
5.3.2nonlocal變量130
5.4lambda錶達式130
5.5生成器函數設計要點133
5.6偏函數與函數柯裏化135
5.7單分發器與泛型函數136
5.8協程函數138
5.9注冊程序退齣時必須執行的函數140
5.10迴調函數原理與實現140
5.11精彩案例賞析141
第6章代碼復用技術(二): 麵嚮對象程序設計167
6.1類的定義與使用167
6.1.1基本語法167
6.1.2type類168
6.1.3定義帶修飾器的類169
6.2數據成員與成員方法171
6.2.1私有成員與公有成員171
6.2.2數據成員172
6.2.3成員方法、類方法、靜態方法、抽象方法173
6.2.4屬性175
6.2.5類與對象的動態性、混入機製177
6.3繼承、多態、依賴注入179
6.3.1繼承179
6.3.2多態181
6.3.3依賴注入技術的不同實現方法182
6.4特殊方法與運算符重載185
6.5精彩案例賞析187
6.5.1自定義隊列187
6.5.2自定義棧191
6.5.3自定義集閤193
6.5.4自定義數組199
6.5.5自定義雙鏈錶204
6.5.6自定義常量類206
6.5.7自定義不允許修改值的字典207
6.5.8自定義支持with關鍵字的類208
第7章文本處理(一): 字符串209
7.1字符串編碼格式簡介210
7.2轉義字符與原始字符串211
7.3字符串格式化212
7.3.1使用%符號進行格式化212
7.3.2使用format()方法進行字符串格式化213
7.3.3格式化的字符串常量215
7.3.4使用Template模闆進行格式化215
7.4字符串常用操作216
7.4.1find()、rfind()、index()、rindex()、count()216
7.4.2split()、rsplit()、partition()、rpartition()217
7.4.3join()219
7.4.4lower()、upper()、capitalize()、title()、swapcase()220
7.4.5replace()、maketrans()、translate()220
7.4.6strip()、rstrip()、lstrip()221
7.4.7startswith()、endswith()222
7.4.8isalnum()、isalpha()、isdigit()、isdecimal()、isnumeric()、
isspace()、isupper()、islower()222
7.4.9center()、ljust()、rjust()、zfill()223
7.4.10字符串對象支持的運算符224
7.4.11適用於字符串對象的內置函數226
7.4.12字符串對象的切片操作228
7.5其他有關模塊228
7.5.1textwrap模塊228
7.5.2zlib模塊提供的壓縮功能231
7.6字符串常量232
7.7可變字符串232
7.8中英文分詞234
7.9漢字到拼音的轉換235
7.10精彩案例賞析236
第8章文本處理(二): 正則錶達式239
8.1正則錶達式語法239
8.1.1正則錶達式基本語法239
8.1.2正則錶達式擴展語法240
8.1.3正則錶達式錦集241
8.2直接使用正則錶達式模塊re處理字符串242
8.3使用正則錶達式對象處理字符串246
8.4match對象248
8.5精彩案例賞析250
第9章數據永久化: 文件內容操作257
9.1文件操作基本知識258
9.1.1內置函數open()258
9.1.2文件對象屬性與常用方法260
9.1.3上下文管理語句with261
9.2文本文件內容操作案例精選261
9.3二進製文件操作案例精選266
9.3.1使用pickle模塊讀寫二進製文件267
9.3.2使用struct模塊讀寫二進製文件268
9.3.3使用shelve模塊操作二進製文件269
9.3.4使用marshal模塊操作二進製文件270
9.3.5其他常見類型二進製文件操作案例271
第10章文件與文件夾操作281
10.1os模塊281
10.2os.path模塊284
10.3shutil模塊286
10.4其他常用模塊287
10.4.1glob模塊287
10.4.2fnmatch模塊288
10.5精彩案例賞析289
第11章代碼質量保障: 異常處理結構、程序調試與測試293
11.1異常處理結構293
11.1.1異常的概念與錶現形式293
11.1.2Python內置異常類層次結構294
11.1.3異常處理結構296
11.1.4斷言與上下文管理語句301
11.2文檔測試doctest301
11.3單元測試unittest304
11.4覆蓋測試307
11.5軟件性能測試308
11.6代碼調試310
11.6.1使用IDLE調試310
11.6.2使用Eclipse+PyDev進行代碼調試311
11.6.3使用pdb調試313
第12章多任務與並行處理: 綫程、進程、協程、分布式、GPU加速318
12.1多綫程編程318
12.1.1綫程概念與標準庫threading318
12.1.2綫程對象320
12.1.3綫程調度323
12.1.4Lock/RLock對象324
12.1.5Condition對象326
12.1.6Queue對象328
12.1.7Event對象332
12.1.8Semaphore與BoundedSemaphore333
12.1.9Barrier對象334
12.2多進程編程335
12.2.1進程創建與管理335
12.2.2進程同步技術336
12.2.3Pool對象337
12.2.4Manager對象341
12.2.5Listener與Client對象345
12.2.6進程間數據交換與共享345
12.2.7標準庫subprocess348
12.3協程349
12.4concurrent.futures模塊提供的並發執行功能351
12.5pySpark並行計算與分布式計算框架353
12.6GPU編程359
12.6.1使用pycuda實現GPU加速359
12.6.2使用pyopencl實現GPU加速360
12.6.3使用tensorflow實現GPU加速362
第13章互通互聯: asyncio提供的網絡通信功能364
13.1Transport類與Protocol類364
13.2StreamReader與StreamWriter369
附錄精彩在繼續373
附錄AGUI開發373
附錄BSQLite數據庫操作376
附錄C計算機圖形學編程377
附錄D圖像編程380
附錄E數據分析、機器學習、科學計算可視化383
附錄F密碼學編程383
附錄G係統運維384
附錄HWindows係統編程384
附錄I軟件分析與逆嚮工程386
參考文獻388
前言
作者第一次接觸Python大概是在2002年,在幾個著名的安全網站上看到有人用這個語言,當時的作者正癡迷於C語言和匯編語言,內心不屑於學習這種腳本語言。2010年的時候因為要用IDAPro分析一個PE文件而不得不藉助於IDAPython插件,纔真正感覺到瞭Python的方便與強大,於是購買瞭很多書籍並且閱讀瞭大量在綫文檔開始係統地學習Python。2013年學校組織各專業教研室修訂新版人纔培養方案時,經過慎重考慮並且與其他幾位老師進行瞭多次溝通,最終確定為數字媒體技術專業和服務外包專業增加瞭“Python程序設計”這門課程。然而,雖然當時市麵上已經有瞭一些Python書籍,但是適閤作為教材的卻寥寥無幾,有的過於專注某個專業領域,有的則是泛泛地介紹一點皮毛,並且很多書裏放置的插圖占用瞭大量篇幅,知識密度很小,不是作者喜歡的風格。在翻看瞭超過20本Python圖書以後,作者決定動手寫一本適閤作教材的書,於是就有瞭麵嚮計算機及相關專業的《Python程序設計》(書號為9787302407232,2015年8月齣版)和麵嚮非計算機專業的《Python程序設計基礎》(書號為9787302410584,2015年8月齣版,2016年3月第2次印刷,2017年1月第3次印刷),前者主要介紹Python2.7.x的基本語法以及在各領域的應用,後者主要介紹Python3.4.x的基本語法而沒有涉及太多的應用。本來當時寫這兩本書的目的僅僅是為瞭自己上課用起來方便,然而齣版不到一年就被近30所院校選作教材,還有幾十所院校的圖書館也采購瞭這兩本書供學生藉閱,反響非常好。應廣大讀者和用書老師的要求,也為瞭緊跟Python飛速發展的步伐,作者於2016年6月又齣版瞭《Python程序設計(第2版)》(書號為9787302436515),這本書使用Python3.5.x重寫瞭第1版中的所有案例,並且新增案例近百個,齣版後迅速被多所院校選作教材,各大網上書店也頻頻缺貨,2016年11月初進行瞭第2次印刷,2017年3月進行瞭第3次印刷。考慮到更多的Python愛好者並沒有聽老師講課的機會,看教材自學可能比較吃力,作者於2017年1月份齣版瞭《Python可以這樣學》(書號為9787302456469),全書500多頁,使用生動活潑的語言講解Python3.5.x的知識和應用(絕大部分內容也適用於Python3.6.x和Python3.7.x),在《Python程序設計(第2版)》的基礎上刪掉瞭“軟件分析與逆嚮工程”和“安卓平颱的Python編程”內容,新增瞭大量案例,並且融入瞭道德經、周易、太極拳理論中的核心思想以及大量中外名人名言,通過小提示、小技巧、注意、拓展知識等多種形式擴充瞭大量知識,尤其適閤Python愛好者自學,也可作為進階工具書進行查閱。該書齣版之後迅速得到社會各界人士的一緻認可,第一批印刷的書很快被搶購一空,不到兩個月就進行瞭第二次印刷。迴頭想想,自己二十年如一日地每天熬夜看書學習寫代碼還是值得的。〖1〗〖2〗Python程序設計開發寶典〖1〗前言〖2〗當2016年6月份作者前幾本Python係列圖書的責任編輯白立軍老師約作者再編寫一本麵嚮高級程序員的Python圖書時,說實話,內心是喜悅的,很高興自己的努力得到廣大Python愛好者的認可。但同時作者內心也有些擔心,感覺在寫前4本書時已經用完瞭自己的洪荒之力。在這本新書裏再寫點什麼好呢?內容該如何組織呢?如何避免過多地重復利用前幾本書裏的案例呢?反復思考瞭近2個月,考慮目前很多Python程序員的現狀:喜歡直接使用各種擴展庫來解決問題,不重視對Python語言本身的理解,內功不夠深厚,導緻很多代碼粗製濫造。最終作者做齣決定,在這本新書裏,不再介紹太多擴展庫的應用,而是把重點放在Python語法和內置對象、標準庫對象的高級應用上,注重Python的內涵,注重內功的修煉,盡量往縱深發展,爭取用最簡練的語言介紹那些作者認為比較高級的用法。在編寫過程中,盡量減少與前幾本書中內容的重復,補充大量新案例和高級用法。當然,前麵幾本書裏的有些案例在這本書裏又齣現瞭,但是仔細的讀者應該能發現,很多案例代碼都進行瞭必要的改寫和優化,更加Pythonnic,更加優雅和高效。自從答應瞭寫這本書之後,作者在不影響正常教學和科研工作的情況下每天拿 Python程序設計開發寶典 下載 mobi epub pdf txt 電子書 格式
Python程序設計開發寶典 下載 mobi pdf epub txt 電子書 格式 2024
Python程序設計開發寶典 下載 mobi epub pdf 電子書⊙∀⊙!
評分內容豐富,實例多,適閤進階學習,可以閱讀到大量的代碼,我非常喜歡!
評分送過來包裝都破瞭,裏麵並沒有把書包起來,其他麼得說
評分好書,給力,價格不貴,專業必備!
評分內容豐富,實例多,適閤進階學習,可以閱讀到大量的代碼,我非常喜歡!
評分隻有一章講gpu 其他都是常規問題
評分還沒看,不過挺想學Python的,看看再說吧!
評分書不錯,當工具書用。作者建立瞭讀者群,可以大傢交流。
評分還不錯,多學習瞭!
Python程序設計開發寶典 mobi epub pdf txt 電子書 格式下載 2024