注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)深入理解Python特性

深入理解Python特性

深入理解Python特性

定 價(jià):¥49.00

作 者: [德] 達(dá)恩·巴德?tīng)枺―an Bader) 著,孫波翔 譯
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

ISBN: 9787115511546 出版時(shí)間: 2019-06-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 163 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

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

作者簡(jiǎn)介

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

圖書(shū)目錄

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

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)