注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡軟件與程序設計深入理解Python特性

深入理解Python特性

深入理解Python特性

定 價:¥49.00

作 者: [德] 達恩·巴德爾(Dan Bader) 著,孫波翔 譯
出版社: 人民郵電出版社
叢編項:
標 簽: 暫缺

ISBN: 9787115511546 出版時間: 2019-06-01 包裝: 平裝
開本: 16開 頁數(shù): 163 字數(shù):  

內(nèi)容簡介

  本書致力于幫助Python開發(fā)人員挖掘這門語言及相關程序庫的優(yōu)秀特性,避免重復勞動,同時寫出簡潔、流暢、易讀、易維護的代碼。用好Python需要了解的*重要的特性、Python 2過渡到Python 3需要掌握的現(xiàn)代模式、有其他編程語言背景想快速上手Python的程序員需要特別注意的問題,等等,本書都可以解決。

作者簡介

  達恩·巴德爾(Dan Bader)影響全球1 000 000以上程序員的PythonistaCafe社區(qū)創(chuàng)始人,Real Python培訓機構總編,擁有近20年軟件開發(fā)經(jīng)驗。巴德爾畢業(yè)于歐洲歷史悠久的慕尼黑工業(yè)大學,該校以優(yōu)異的科教質量聞名,到2018年已經(jīng)培養(yǎng)出17位諾貝爾獎得主。

圖書目錄

第 1章 簡介  1
1.1 什么是Python技巧 1
1.2 本書作用 2
1.3 如何閱讀本書 2
第 2章 Python整潔之道 4
2.1 用斷言加一層保險 4
2.1.1 示例:Python中的斷言 4
2.1.2 為什么不用普通的異常來處理 6
2.1.4 常見陷阱 6
2.1.5 Python斷言總結 9
2.1.6 關鍵要點 9
2.2 巧妙地放置逗號 9
2.3 上下文管理器和with語句 11
2.3.1 在自定義對象中支持with 12
2.3.2 用上下文管理器編寫漂亮的API 13
2.3.3 關鍵要點 15
2.4 下劃線、雙下劃線及其他 15
2.4.1 前置單下劃線:_var 15
2.4.2 后置單下劃線:var_ 17
2.4.3 前置雙下劃線:__var 17
2.4.4 前后雙下劃線:__var__ 20
2.4.5 單下劃線:_ 21
2.4.6 關鍵要點 22
2.5 字符串格式化中令人震驚的真相 22
2.5.1 第 一種方法:“舊式”字符串格式化 22
2.5.2 第二種方法:“新式”字符串格式化 23
2.5.3 第三種方法:字符串字面值插值(Python 3.6+) 24
2.5.4 第四種方法:模板字符串 25
2.5.5 如何選擇字符串格式化方法 26
2.5.6 關鍵要點 27
2.6 “Python之禪”中的彩蛋 27
第3章 高效的函數(shù) 28
3.1 函數(shù)是Python的頭等對象 28
3.1.1 函數(shù)是對象 28
3.1.2 函數(shù)可存儲在數(shù)據(jù)結構中 29
3.1.3 函數(shù)可傳遞給其他函數(shù) 30
3.1.4 函數(shù)可以嵌套 31
3.1.5 函數(shù)可捕捉局部狀態(tài) 32
3.1.6 對象也可作為函數(shù)使用 33
3.1.7 關鍵要點 33
3.2 lambda是單表達式函數(shù) 34
3.2.1 lambda的使用場景 35
3.2.2 不應過度使用lambda 36
3.2.3 關鍵要點 36
3.3 裝飾器的力量 37
3.3.1 Python裝飾器基礎 38
3.3.2 裝飾器可以修改行為 39
3.3.3 將多個裝飾器應用于一個函數(shù) 41
3.3.5 如何編寫“可調(diào)試”的裝飾器 44
3.4 有趣的*args和**kwargs 44
3.4.1 傳遞可選參數(shù)或關鍵字參數(shù) 45
3.4.2 關鍵要點 46
3.5 函數(shù)參數(shù)解包 47
3.6 返回空值 48
第4章 類與面向對象 51
4.1 對象比較:is 與== 51
4.2 字符串轉換(每個類都需要__repr__) 52
4.2.1 __str__與__repr__ 54
4.2.2 為什么每個類都需要__repr__ 55
4.2.3 Python 2.x的差異:__unicode__ 57
4.2.4 關鍵要點 58
4.3 定義自己的異常類 58
4.4 克隆對象 60
4.4.1 制作淺副本 61
4.4.2 制作深副本 62
4.4.3 復制任意對象 63
4.4.4 關鍵要點 65
4.5 用抽象基類避免繼承錯誤 65
4.6 namedtuple的優(yōu)點 67
4.6.1 namedtuple上場 68
4.6.2 子類化namedtuple 70
4.6.3 內(nèi)置的輔助方法 70
4.6.4 何時使用namedtuple 71
4.6.5 關鍵要點 71
4.7 類變量與實例變量的陷阱 72
4.7.1 與狗無關的例子 74
4.7.2 關鍵要點 75
4.8 實例方法、類方法和靜態(tài)方法揭秘 75
4.8.1 實例方法 76
4.8.2 類方法 76
4.8.3 靜態(tài)方法 76
4.8.4 在實踐中探尋 77
4.8.5 使用@classmethod的Pizza工廠類 78
4.8.6 什么時候使用靜態(tài)方法 80
4.8.7 關鍵要點 81
第5章 Python中常見的數(shù)據(jù)結構 82
5.1 字典、映射和散列表 83
5.1.1 dict——首選字典實現(xiàn) 83
5.1.2 collections.OrderedDict——能記住鍵的插入順序 84
5.1.3 collections.defaultdict——為缺失的鍵返回默認值 85
5.1.4 collections.ChainMap——搜索多個字典 85
5.1.5 types.MappingProxyType——用于創(chuàng)建只讀字典 86
5.1.6 Python中的字典:總結 86
5.1.7 關鍵要點 87
5.2 數(shù)組數(shù)據(jù)結構 87
5.2.1 列表——可變動態(tài)數(shù)組 88
5.2.2 元組——不可變?nèi)萜鳌?8
5.2.3 array.a(chǎn)rray——基本類型數(shù)組 89
5.2.4 str——含有Unicode 字符的不可變數(shù)組 90
5.2.5 bytes——含有單字節(jié)的不可變數(shù)組 91
5.2.6 bytearray——含有單字節(jié)的可變數(shù)組 91
5.2.7 關鍵要點 92
5.3 記錄、結構體和純數(shù)據(jù)對象 93
5.3.1 字典——簡單數(shù)據(jù)對象 93
5.3.2 元組——不可變對象集合 94
5.3.3 編寫自定義類——手動精細控制 96
5.3.4 collections.namedtuple——方便的數(shù)據(jù)對象 96
5.3.5 typing.NamedTuple——改進版namedtuple 97
5.3.6 struct.Struct——序列化C結構體 98
5.3.7 types.SimpleNamespace——花哨的屬性訪問 99
5.3.8 關鍵要點 99
5.4 集合和多重集合 100
5.4.1 set——首選集合實現(xiàn) 101
5.4.2 frozenset——不可變集合 101
5.4.3 collections.Counter——多重集合 101
5.4.4 關鍵要點 102
5.5 棧(后進先出) 102
5.5.1 列表——簡單的內(nèi)置棧 103
5.5.2 collections.deque——快速且穩(wěn)健的?!?04
5.5.3 queue.LifoQueue——為并行計算提供鎖語義 104
5.5.4 比較Python 中各個棧的實現(xiàn) 105
5.6 隊列(先進先出) 106
5.6.1 列表——非常慢的隊列 107
5.6.2 collections.deque——快速和穩(wěn)健的隊列 107
5.6.3 queue.Queue——為并行計算提供的鎖語義 108
5.6.4 multiprocessing.Queue——共享作業(yè)隊列 108
5.6.5 關鍵要點 109
5.7 優(yōu)先隊列 109
5.7.1 列表——手動維護有序隊列 110
5.7.3 queue.PriorityQueue——美麗的優(yōu)先級隊列 111
5.7.4 關鍵要點 111
第6章 循環(huán)和迭代 112
6.1 編寫Python式的循環(huán) 112
6.2 理解解析式 114
6.3 列表切片技巧與壽司操作員 116
6.4 美麗的迭代器 118
6.4.1 無限迭代 119
6.4.2 for-in循環(huán)在Python中的工作原理 121
6.4.3 更簡單的迭代器類 122
6.4.4 不想無限迭代 123
6.4.5 Python 2.x兼容性 125
6.4.6 關鍵要點 126
6.5 生成器是簡化版迭代器 126
6.5.1 無限生成器 126
6.5.2 能夠停下來的生成器 128
6.5.3 關鍵要點 130
6.6 生成器表達式 130
6.6.1 生成器表達式與列表解析式 132
6.6.3 內(nèi)聯(lián)生成器表達式 133
6.6.4 物極必反 133
6.6.5 關鍵要點 134
6.7 迭代器鏈 134
第7章 字典技巧 137
7.1 字典默認值 137
7.2 字典排序 139
7.3 用字典模擬switch/case語句 141
7.4 “最瘋狂”的字典表達式 144
7.5 合并詞典的幾種方式 148
7.6 美觀地輸出字典 149
第8章 Python式高效技巧 152
8.1 探索Python的模塊和對象 152
8.2 用virtualenv隔離項目依賴關系 154
8.2.1 使用虛擬環(huán)境 155
8.2.2 關鍵要點 157
8.3 在字節(jié)碼后一窺究竟 157
第9章 結語 161
9.1 針對Python開發(fā)者免費每周提示 161
9.2 PythonistaCafe:Python開發(fā)人員的社區(qū) 162

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.afriseller.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號