注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件工程及軟件方法學(xué)Effective Python:編寫高質(zhì)量Python代碼的59個(gè)有效方法(英文版)

Effective Python:編寫高質(zhì)量Python代碼的59個(gè)有效方法(英文版)

Effective Python:編寫高質(zhì)量Python代碼的59個(gè)有效方法(英文版)

定 價(jià):¥65.00

作 者: (美)Brett Slatkin(布雷特·斯拉特金)
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 程序設(shè)計(jì) 計(jì)算機(jī)/網(wǎng)絡(luò)

ISBN: 9787121272622 出版時(shí)間: 2016-03-01 包裝: 平塑
開本: 頁數(shù): 248 字?jǐn)?shù):  

內(nèi)容簡介

  本書不是要講述 Python 的基礎(chǔ)編程,而是要幫你掌握 Python 獨(dú)特的優(yōu)勢和魅力。書中總結(jié)了 59個(gè) Python 編程的優(yōu)秀實(shí)踐、貼士和捷徑,并用真實(shí)代碼示例進(jìn)行了解釋。全書共分 8 章,第 1 章講述Python 的風(fēng)格思想,介紹了 Python 中常見問題的推薦解決方案;第 2 章講述如何使用 Python 函數(shù)來闡明意圖、提升可重用性,并減少錯(cuò)誤;第 3 章介紹如何使用類和繼承來表達(dá)你對對象的預(yù)期行為;第4章介紹了使用這些元類和屬性的常用語法;第5章講述如何在并行和并發(fā)的場景下利用好Python;第 6 章講述 Python 中必要的內(nèi)置模塊;第 7 章教你如何合作開發(fā) Python 程序;第 8 章介紹如何使用Python 調(diào)試、優(yōu)化和測試程序。

作者簡介

 ?。溃〣rett Slatkin(布雷特·斯拉特金)

圖書目錄

前言 致謝 關(guān)于作者 Chapter 1: Pythonic Thinking Item 1: Know Which Version of Python You’re Using Item 2: Follow the PEP 8 Style Guide Item 3: Know the Differences Between bytes , str , and unicode Item 4: Write Helper Functions Instead of Complex Expressions Item 5: Know How to Slice Sequences Item 6: Avoid Using start , end , and stride in a Single Slice Item 7: Use List Comprehensions Instead of map and filter Item 8: Avoid More Than Two Expressions in List Comprehensions Item 9: Consider Generator Expressions for Large Comprehensions Item 10: Prefer enumerate Over range Item 11: Use zip to Process Iterators in Parallel Item 12: Avoid else Blocks After for and while Loops Item 13: Take Advantage of Each Block in try / except / else / finally Chapter 2: Functions Item 14: Prefer Exceptions to Returning None Item 15: Know How Closures Interact with Variable Scope Item 16: Consider Generators Instead of Returning Lists Item 17: Be Defensive When Iterating Over Arguments Item 18: Reduce Visual Noise with Variable Positional Arguments Item 19: Provide Optional Behavior with Keyword Arguments Item 20: Use None and Docstrings to Specify Dynamic Default Arguments Item 21: Enforce Clarity with Keyword-Only Arguments Chapter 3: Classes and Inheritance Item 22: Prefer Helper Classes Over Bookkeeping with Dictionaries and Tuples Item 23: Accept Functions for Simple Interfaces Instead of Classes Item 24: Use @classmethod Polymorphism to Construct Objects Generically Item 25: Initialize Parent Classes with super Item 26: Use Multiple Inheritance Only for Mix-in Utility Classes Item 27: Prefer Public Attributes Over Private Ones Item 28: Inherit from collections.a(chǎn)bc for Custom Container Types Chapter 4: Metaclasses and Attributes Item 29: Use Plain Attributes Instead of Get and Set Methods Item 30: Consider @property Instead of Refactoring Attributes Item 31: Use Descriptors for Reusable @property Methods Item 32: Use __getattr__ , __getattribute__ , and __setattr__ for Lazy Attributes Item 33: Validate Subclasses with Metaclasses Item 34: Register Class Existence with Metaclasses Item 35: Annotate Class Attributes with Metaclasses Chapter 5: Concurrency and Parallelism Item 36: Use subprocess to Manage Child Processes Item 37: Use Threads for Blocking I/O, Avoid for Parallelism Item 38: Use Lock to Prevent Data Races in Threads Item 39: Use Queue to Coordinate Work Between Threads Item 40: Consider Coroutines to Run Many Functions Concurrently Item 41: Consider concurrent.futures for True Parallelism Chapter 6: Built-in Modules Item 42: Define Function Decorators with functools.wraps Item 43: Consider contextlib and with Statements for Reusable try / finally Behavior Item 44: Make pickle Reliable with copyreg Item 45: Use datetime Instead of time for Local Clocks Item 46: Use Built-in Algorithms and Data Structures Item 47: Use decimal When Precision Is Paramount Item 48: Know Where to Find Community-Built Modules Chapter 7: Collaboration Item 49: Write Docstrings for Every Function, Class, and Module Item 50: Use Packages to Organize Modules and Provide Stable APIs Item 51: Define a Root Exception to Insulate Callers from APIs Item 52: Know How to Break Circular Dependencies Item 53: Use Virtual Environments for Isolated and Reproducible Dependencies Chapter 8: Production Item 54: Consider Module-Scoped Code to Configure Deployment Environments Item 55: Use repr Strings for Debugging Output Item 56: Test Everything with unittest Item 57: Consider Interactive Debugging with pdb Item 58: Profile Before Optimizing Item 59: Use tracemalloc to Understand Memory Usage and Leaks Index

本目錄推薦

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