ورود به حساب

نام کاربری گذرواژه

گذرواژه را فراموش کردید؟ کلیک کنید

حساب کاربری ندارید؟ ساخت حساب

ساخت حساب کاربری

نام نام کاربری ایمیل شماره موبایل گذرواژه

برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید


09117307688
09117179751

در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید

دسترسی نامحدود

برای کاربرانی که ثبت نام کرده اند

ضمانت بازگشت وجه

درصورت عدم همخوانی توضیحات با کتاب

پشتیبانی

از ساعت 7 صبح تا 10 شب

دانلود کتاب Effective Python: 90 specific ways to write better Python

دانلود کتاب پایتون موثر: 90 روش خاص برای نوشتن پایتون بهتر

Effective Python: 90 specific ways to write better Python

مشخصات کتاب

Effective Python: 90 specific ways to write better Python

ویرایش: Second edition 
نویسندگان:   
سری: Effective software development series 
ISBN (شابک) : 9780134853987, 9780134854717 
ناشر: Addison-Wesley Professional; Addison-Wesley : Pearson Education 
سال نشر: 2019;2020 
تعداد صفحات: 0 
زبان: English 
فرمت فایل : EPUB (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) 
حجم فایل: 47 مگابایت 

قیمت کتاب (تومان) : 53,000



کلمات کلیدی مربوط به کتاب پایتون موثر: 90 روش خاص برای نوشتن پایتون بهتر: علوم کامپیوتر، برنامه نویسی، فنی، علوم، فناوری، نرم افزار، کامپیوتر، غیرداستانی، کدنویسی



ثبت امتیاز به این کتاب

میانگین امتیاز به این کتاب :
       تعداد امتیاز دهندگان : 9


در صورت تبدیل فایل کتاب Effective Python: 90 specific ways to write better Python به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.

توجه داشته باشید کتاب پایتون موثر: 90 روش خاص برای نوشتن پایتون بهتر نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.


توضیحاتی در مورد کتاب پایتون موثر: 90 روش خاص برای نوشتن پایتون بهتر

به‌روزرسانی و توسعه‌یافته برای پایتون 3

شروع به توسعه برنامه‌ها با پایتون آسان است، به همین دلیل است که این زبان بسیار محبوب است. با این حال، درک نقاط قوت، جذابیت‌ها و بیان منحصربه‌فرد پایتون دشوار است، و دام‌های پنهانی وجود دارد که می‌توانند به راحتی شما را غافلگیر کنند.

این نسخه دومPython موثرمی‌تواند به شما کمک می کند تا بر یک رویکرد واقعاً \"پایتونیک\" در برنامه نویسی مسلط شوید و از تمام قدرت پایتون برای نوشتن کدهای فوق العاده قوی و با عملکرد خوب استفاده کنید. برت اسلاتکین با استفاده از سبک مختصر و سناریو محور که در پرفروش‌ترینC اسکات مایرز پیشگام بود، 90 بهترین روش، نکته و میانبر پایتون را گرد هم می‌آورد و آنها را با مثال‌های کد واقعی توضیح می‌دهد تا شما می‌تواند با اطمینان پایتون را بپذیرد.

با تکیه بر سال‌ها تجربه در ساخت زیرساخت‌های پایتون در Google، اسلاتکین خصلت‌ها و اصطلاحات کمتر شناخته‌شده‌ای را کشف می‌کند که به شدت بر رفتار و عملکرد کد تأثیر می‌گذارند. شما بهترین راه برای انجام وظایف کلیدی را خواهید فهمید تا بتوانید کدی بنویسید که درک، نگهداری و بهبود آن آسان تر باشد. علاوه بر توصیه‌های بیشتر، این نسخه جدید به‌طور قابل‌توجهی همه موارد را از نسخه اول بازبینی می‌کند تا نشان دهد بهترین شیوه‌ها چگونه تکامل یافته‌اند.

ویژگی‌های کلیدی عبارتند از
30 دستورالعمل جدید عملی برای همه حوزه‌های اصلی Python توضیحات مفصل و مثال‌هایی از عبارات، عبارات و انواع داخلی بهترین روش‌ها برای نوشتن توابع که قصد را روشن می‌کنند، استفاده مجدد را ترویج می‌کنند و از اشکالات اجتناب می‌کنند تکنیک‌ها و اصطلاحات بهتر برای استفاده از درک و توابع تولیدکننده پوشش نحوه بیان دقیق رفتارها با کلاس‌ها و رابط ها راهنمایی در مورد نحوه جلوگیری از مشکلات با متاکلاس ها و ویژگی های پویا رویکردهای کارآمدتر و واضح تر برای همزمانی و موازی راه حل هایی برای بهینه سازی و سخت شدن برای به حداکثر رساندن عملکرد و کیفیت تکنیک ها و ماژول های داخلی که به اشکال زدایی و آزمایش ابزارها و بهترین شیوه ها برای توسعه مشترک کمک می کند. پایتون موثربرنامه نویسان در حال رشد را آماده می کند تا با استفاده از پایتون تأثیر زیادی بگذارند.


توضیحاتی درمورد کتاب به خارجی

Updated and Expanded for Python 3

It's easy to start developing programs with Python, which is why the language is so popular. However, Python's unique strengths, charms, and expressiveness can be hard to grasp, and there are hidden pitfalls that can easily trip you up.

This second edition ofEffective Pythonwill help you master a truly "Pythonic" approach to programming, harnessing Python's full power to write exceptionally robust and well-performing code. Using the concise, scenario-driven style pioneered in Scott Meyers' best-sellingEffective C++, Brett Slatkin brings together 90 Python best practices, tips, and shortcuts, and explains them with realistic code examples so that you can embrace Python with confidence.

Drawing on years of experience building Python infrastructure at Google, Slatkin uncovers little-known quirks and idioms that powerfully impact code behavior and performance. You'll understand the best way to accomplish key tasks so you can write code that's easier to understand, maintain, and improve. In addition to even more advice, this new edition substantially revises all items from the first edition to reflect how best practices have evolved.

Key features include
30 new actionable guidelines for all major areas of Python Detailed explanations and examples of statements, expressions, and built-in types Best practices for writing functions that clarify intention, promote reuse, and avoid bugs Better techniques and idioms for using comprehensions and generator functions Coverage of how to accurately express behaviors with classes and interfaces Guidance on how to avoid pitfalls with metaclasses and dynamic attributes More efficient and clear approaches to concurrency and parallelism Solutions for optimizing and hardening to maximize performance and quality Techniques and built-in modules that aid in debugging and testing Tools and best practices for collaborative developmentEffective Pythonwill prepare growing programmers to make a big impact using Python.



فهرست مطالب

Cover
Half Title
Title Page
Copyright Page
Dedication
Contents
Preface
Acknowledgments
About the Author
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 and str
	Item 4: Prefer Interpolated F-Strings Over C-style Format Strings and str.format
	Item 5: Write Helper Functions Instead of Complex Expressions
	Item 6: Prefer Multiple Assignment Unpacking Over Indexing
	Item 7: Prefer enumerate Over range
	Item 8: Use zip to Process Iterators in Parallel
	Item 9: Avoid else Blocks After for and while Loops
	Item 10: Prevent Repetition with Assignment Expressions
Chapter 2 Lists and Dictionaries
	Item 11: Know How to Slice Sequences
	Item 12: Avoid Striding and Slicing in a Single Expression
	Item 13: Prefer Catch-All Unpacking Over Slicing
	Item 14: Sort by Complex Criteria Using the key Parameter
	Item 15: Be Cautious When Relying on dict Insertion Ordering
	Item 16: Prefer get Over in and KeyError to Handle Missing Dictionary Keys
	Item 17: Prefer defaultdict Over setdefault to Handle Missing Items in Internal State
	Item 18: Know How to Construct Key-Dependent Default Values with __missing__
Chapter 3 Functions
	Item 19: Never Unpack More Than Three Variables When Functions Return Multiple Values
	Item 20: Prefer Raising Exceptions to Returning None
	Item 21: Know How Closures Interact with Variable Scope
	Item 22: Reduce Visual Noise with Variable Positional Arguments
	Item 23: Provide Optional Behavior with Keyword Arguments
	Item 24: Use None and Docstrings to Specify Dynamic Default Arguments
	Item 25: Enforce Clarity with Keyword-Only and Positional-Only Arguments
	Item 26: Define Function Decorators with functools.wraps
Chapter 4 Comprehensions and Generators
	Item 27: Use Comprehensions Instead of map and filter
	Item 28: Avoid More Than Two Control Subexpressions in Comprehensions
	Item 29: Avoid Repeated Work in Comprehensions by Using Assignment Expressions
	Item 30: Consider Generators Instead of Returning Lists
	Item 31: Be Defensive When Iterating Over Arguments
	Item 32: Consider Generator Expressions for Large List Comprehensions
	Item 33: Compose Multiple Generators with yield from
	Item 34: Avoid Injecting Data into Generators with send
	Item 35: Avoid Causing State Transitions in Generators with throw
	Item 36: Consider itertools for Working with Iterators and Generators
Chapter 5 Classes and Interfaces
	Item 37: Compose Classes Instead of Nesting Many Levels of Built-in Types
	Item 38: Accept Functions Instead of Classes for Simple Interfaces
	Item 39: Use @classmethod Polymorphism to Construct Objects Generically
	Item 40: Initialize Parent Classes with super
	Item 41: Consider Composing Functionality with Mix-in Classes
	Item 42: Prefer Public Attributes Over Private Ones
	Item 43: Inherit from collections.abc for Custom Container Types
Chapter 6 Metaclasses and Attributes
	Item 44: Use Plain Attributes Instead of Setter and Getter Methods
	Item 45: Consider @property Instead of Refactoring Attributes
	Item 46: Use Descriptors for Reusable @property Methods
	Item 47: Use__getattr__, __getattribute__, and __setattr__ for Lazy Attributes
	Item 48: Validate Subclasses with __init_subclass__
	Item 49: Register Class Existence with __init_subclass__
	Item 50: Annotate Class Attributes with __set_name__
	Item 51: Prefer Class Decorators Over Metaclasses for Composable Class Extensions
Chapter 7 Concurrency and Parallelism
	Item 52: Use subprocess to Manage Child Processes
	Item 53: Use Threads for Blocking I/O, Avoid for Parallelism
	Item 54: Use Lock to Prevent Data Races in Threads
	Item 55: Use Queue to Coordinate Work Between Threads
	Item 56: Know How to Recognize When Concurrency Is Necessary
	Item 57: Avoid Creating New Thread Instances for On-demand Fan-out
	Item 58: Understand How Using Queue for Concurrency Requires Refactoring
	Item 59: Consider ThreadPoolExecutor When Threads Are Necessary for Concurrency
	Item 60: Achieve Highly Concurrent I/O with Coroutines
	Item 61: Know How to Port Threaded I/O to asyncio
	Item 62: Mix Threads and Coroutines to Ease the Transition to asyncio
	Item 63: Avoid Blocking the asyncio Event Loop to Maximize Responsiveness
	Item 64: Consider concurrent.futures for True Parallelism
Chapter 8 Robustness and Performance
	Item 65: Take Advantage of Each Block in try/except /else/finally
	Item 66: Consider contextlib and with Statements for Reusable try/finally Behavior
	Item 67: Use datetime Instead of time for Local Clocks
	Item 68: Make pickle Reliable with copyreg
	Item 69: Use decimal When Precision Is Paramount
	Item 70: Profile Before Optimizing
	Item 71: Prefer deque for Producer–Consumer Queues
	Item 72: Consider Searching Sorted Sequences with bisect
	Item 73: Know How to Use heapq for Priority Queues
	Item 74: Consider memoryview and bytearray for Zero-Copy Interactions with bytes
Chapter 9 Testing and Debugging
	Item 75: Use repr Strings for Debugging Output
	Item 76: Verify Related Behaviors in TestCase Subclasses
	Item 77: Isolate Tests from Each Other with setUp, tearDown, setUpModule, and tearDownModule
	Item 78: Use Mocks to Test Code with Complex Dependencies
	Item 79: Encapsulate Dependencies to Facilitate Mocking and Testing
	Item 80: Consider Interactive Debugging with pdb
	Item 81: Use tracemalloc to Understand Memory Usage and Leaks
Chapter 10 Collaboration
	Item 82: Know Where to Find Community-Built Modules
	Item 83: Use Virtual Environments for Isolated and Reproducible Dependencies
	Item 84: Write Docstrings for Every Function, Class, and Module
	Item 85: Use Packages to Organize Modules and Provide Stable APIs
	Item 86: Consider Module-Scoped Code to Configure Deployment Environments
	Item 87: Define a Root Exception to Insulate Callers from APIs
	Item 88: Know How to Break Circular Dependencies
	Item 89: Consider warnings to Refactor and Migrate Usage
	Item 90: Consider Static Analysis via typing to Obviate Bugs
Index
	A
	B
	C
	D
	E
	F
	G
	H
	I
	J
	K
	L
	M
	N
	O
	P
	Q
	R
	S
	T
	U
	V
	W
	Y
	Z




نظرات کاربران