注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計Python代碼整潔之道:編寫優(yōu)雅的代碼

Python代碼整潔之道:編寫優(yōu)雅的代碼

Python代碼整潔之道:編寫優(yōu)雅的代碼

定 價:¥79.00

作 者: Sunil Kapil 著,連少華譯 譯
出版社: 機械工業(yè)出版社
叢編項: 華章程序員書庫
標(biāo) 簽: 暫缺

ISBN: 9787111665878 出版時間: 2020-09-01 包裝: 平裝
開本: 16開 頁數(shù): 208 字?jǐn)?shù):  

內(nèi)容簡介

  探索使用Python編寫代碼的正確方法。本書提供了構(gòu)建無錯誤和強壯的Python項目所需的技巧和技術(shù)。 為了講授如何編寫更好的代碼,本書首先介紹理解代碼格式化和代碼注釋的重要性,以及利用內(nèi)置數(shù)據(jù)結(jié)構(gòu)和Python字典提高可維護性,使用模塊和元類有效地組織代碼; 然后深入介紹Python語言的新特性,并教會讀者如何有效地使用它們;接下來,將深入介紹一些關(guān)鍵概念,如異步編程、Python數(shù)據(jù)類型、類型提示和路徑處理等,并講述調(diào)試、單元測試和集成測試的技巧,以保證代碼可以投入生產(chǎn); 最后在附錄中介紹了一些有助于加快開發(fā)速度和提高代碼質(zhì)量的優(yōu)秀Python工具。 閱讀本書之后,你將會熟練地編寫整潔的Python代碼,并可以成功地將這些原則應(yīng)用到自己的Python項目中。 你將學(xué)到以下內(nèi)容: ●正確地使用表達式和語句 ●創(chuàng)建字典并評估字典的使用 ●使用Python中的高級數(shù)據(jù)結(jié)構(gòu) ●編寫更好的模塊、類、函數(shù)和元類 ●編寫異步代碼 ●發(fā)現(xiàn)Python的新特性

作者簡介

  【作者簡介】 Sunil Kapil在過去的10年中一直從事軟件開發(fā)工作,用Python和其他幾種語言編寫代碼,主要涉及Web和移動端服務(wù)的軟件開發(fā)。他開發(fā)、部署并維護了被數(shù)百萬用戶喜愛和使用的各種項目,這些項目是與來自不同專業(yè)環(huán)境的團隊合作完成的,涉及世界著名的軟件公司。他也是開源的熱情倡導(dǎo)者,并持續(xù)貢獻Zulip Chat和Black等項目。他還與非營利組織合作,并以志愿者的身份為其軟件項目做出貢獻。 【譯者介紹】 連少華 先后就職于中興通訊、深交所、金證股份等知名公司和機構(gòu),熱衷于軟件事業(yè),技術(shù)棧廣泛,涉及C++、C#、Java、Python、Golang等,對架構(gòu)設(shè)計和底層技術(shù)有深入的理解和實踐,曾經(jīng)給國外的一些開源庫提交過bug并貢獻過代碼。在CSDN論壇擔(dān)任過5年多的C++小版的版主和C/C++大版的版主。譯有《C++代碼整潔之道》,現(xiàn)致力于大數(shù)據(jù)平臺的設(shè)計與開發(fā)。

圖書目錄

●第1章 關(guān)于Python的思考1
1.1 編寫Python代碼1
1.1.1 命名2
1.1.2 代碼中的表達式和語句5
1.1.3 擁抱Python編寫代碼的方式8
1.2 使用文檔字符串14
1.2.1 模塊級文檔字符串17
1.2.2 使類文檔字符串具有描述性17
1.2.3 函數(shù)文檔字符串18
1.2.4 一些有用的文檔字符串工具19
1.3 編寫Python的控制結(jié)構(gòu)20
1.3.1 使用列表推導(dǎo)20
1.3.2 不要使用復(fù)雜的列表推導(dǎo)21
1.3.3 應(yīng)該使用lambda嗎23
1.3.4 何時使用生成器與何時使用列表推導(dǎo)23
1.3.5 為什么不要在循環(huán)中使用else24
1.3.6 為什么range函數(shù)在Python 3中更好27
1.4 引發(fā)異常28
1.4.1 習(xí)慣引發(fā)異常28
1.4.2 使用finally來處理異常30
1.4.3 創(chuàng)建自己的異常類31
1.4.4 只處理特定的異常32
1.4.5 小心第三方的異常34
1.4.6 try最少的代碼塊35
1.5 小結(jié)36

●第2章 數(shù)據(jù)結(jié)構(gòu)38
2.1 常用數(shù)據(jù)結(jié)構(gòu)38
2.1.1 使用集合38
2.1.2 返回和訪問數(shù)據(jù)時使用namedtuple40
2.1.3 理解str、Unicode和byte43
2.1.4 謹(jǐn)慎使用列表,優(yōu)先使用生成器44
2.1.5 使用zip處理列表47
2.1.6 使用Python的內(nèi)置函數(shù)48
2.2 使用字典50
2.2.1 何時使用字典與何時使用其他數(shù)據(jù)結(jié)構(gòu)51
2.2.2 collections51
2.2.3 有序字典、默認(rèn)字典、普通字典54
2.2.4 使用字典的switch語句55
2.2.5 合并兩個字典的方法56
2.2.6 優(yōu)雅地打印字典57
2.3 小結(jié)58

●第3章 編寫更好的函數(shù)和類59
3.1 函數(shù)59
3.1.1 編寫小函數(shù)60
3.1.2 返回生成器61
3.1.3 引發(fā)異常替代返回None63
3.1.4 使用默認(rèn)參數(shù)和關(guān)鍵字參數(shù)64
3.1.5 不要顯式地返回None66
3.1.6 編寫函數(shù)時注意防御68
3.1.7 單獨使用lambda表達式70
3.2 類72
3.2.1 類的大小72
3.2.2 類結(jié)構(gòu)73
3.2.3 正確地使用@property75
3.2.4 什么時候使用靜態(tài)方法77
3.2.5 繼承抽象類79
3.2.6 使用@classmethod來訪問類的狀態(tài)80
3.2.7 使用公有屬性代替私有屬性81
3.3 小結(jié)83

●第4章 使用模塊和元類84
4.1 模塊和元類84
4.2 如何使用模塊組織代碼86
4.3 使用__init__文件88
4.4 以正確的方式從模塊導(dǎo)入函數(shù)和類90
4.5 何時使用元類92
4.6 使用__new__方法驗證子類93
4.7 __slots__的用途95
4.8 使用元類改變類的行為98
4.9 Python描述符100
4.10 小結(jié)102

●第5章 裝飾器和上下文管理器104
5.1 裝飾器105
5.1.1 裝飾器及其作用105
5.1.2 理解裝飾器106
5.1.3 使用裝飾器更改行為108
5.1.4 同時使用多個裝飾器110
5.1.5 使用帶參數(shù)的裝飾器111
5.1.6 考慮使用裝飾器庫112
5.1.7 用于維護狀態(tài)和驗證參數(shù)的類裝飾器114
5.2 上下文管理器117
5.2.1 上下文管理器及用途117
5.2.2 理解上下文管理器119
5.2.3 使用contextlib創(chuàng)建上下文管理器120
5.2.4 上下文管理器的示例121
5.3 小結(jié)124

●第6章 生成器與迭代器125
6.1 使用生成器和迭代器125
6.1.1 理解迭代器125
6.1.2 什么是生成器128
6.1.3 何時使用迭代器129
6.1.4 使用itertools130
6.1.5 為什么生成器非常有用132
6.1.6 列表推導(dǎo)和迭代器133
6.2 使用yield關(guān)鍵字133
6.2.1 yield from135
6.2.2 yield相比數(shù)據(jù)結(jié)構(gòu)更快135
6.3 小結(jié)136

●第7章 使用Python的新特性137
7.1 異步編程137
7.1.1 Python中的async138
7.1.2 asyncio是如何工作的141
7.1.3 異步生成器151
7.2 類型標(biāo)注159
7.2.1 Python中的類型160
7.2.2 typing模塊160
7.2.3 類型檢查會影響性能嗎163
7.2.4 類型標(biāo)注如何幫助編寫更好的代碼163
7.2.5 typing的陷阱163
7.3 super()方法164
7.4 類型提示164
7.5 使用pathlib處理路徑164
7.6 print()現(xiàn)在是一個函數(shù)165
7.7 f-string165
7.8 關(guān)鍵字參數(shù)166
7.9 保持字典數(shù)據(jù)的順序166
7.10 迭代解包166
7.11 小結(jié)167

●第8章 調(diào)試和測試Python代碼168
8.1 調(diào)試168
8.1.1 調(diào)試工具169
8.1.2 breakpoint172
8.1.3 在產(chǎn)品代碼中使用logging模塊替代print172
8.1.4 使用metrics庫來分析性能瓶頸177
8.1.5 IPython有什么幫助178
8.2 測試179
8.2.1 測試非常重要179
8.2.2 Pytest和UnitTest180
8.2.3 屬性測試184
8.2.4 生成測試報告184
8.2.5 自動化單元測試185
8.2.6 讓代碼為生產(chǎn)做好準(zhǔn)備186
8.2.7 在Python中執(zhí)行單元和集成測試186
8.3 小結(jié)189
附錄 一些很棒的Python工具190


本目錄推薦

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