ورود به حساب

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

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

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

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

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

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


09117307688
09117179751

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

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

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

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

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

پشتیبانی

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

دانلود کتاب Python Notes for Professionals. 800+ pages of professional hints and tricks

دانلود کتاب یادداشت های پایتون برای حرفه ای ها. 800+ صفحه نکات و ترفندهای حرفه ای

Python Notes for Professionals. 800+ pages of professional hints and tricks

مشخصات کتاب

Python Notes for Professionals. 800+ pages of professional hints and tricks

ویرایش:  
نویسندگان:   
سری:  
 
ناشر: GoalKicker.com 
سال نشر: 2020 
تعداد صفحات: 856 
زبان: English 
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) 
حجم فایل: 8 مگابایت 

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



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

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


در صورت تبدیل فایل کتاب Python Notes for Professionals. 800+ pages of professional hints and tricks به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.

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


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



فهرست مطالب

Content list
About
Chapter 1: Getting started with Python Language
	Section 1.1: Getting Started
	Section 1.2: Creating variables and assigning values
	Section 1.3: Block Indentation
	Section 1.4: Datatypes
	Section 1.5: Collection Types
	Section 1.6: IDLE - Python GUI
	Section 1.7: User Input
	Section 1.8: Built in Modules and Functions
	Section 1.9: Creating a module
	Section 1.10: Installation of Python 2.7.x and 3.x
	Section 1.11: String function - str() and repr()
	Section 1.12: Installing external modules using pip
	Section 1.13: Help Utility
Chapter 2: Python Data Types
	Section 2.1: String Data Type
	Section 2.2: Set Data Types
	Section 2.3: Numbers data type
	Section 2.4: List Data Type
	Section 2.5: Dictionary Data Type
	Section 2.6: Tuple Data Type
Chapter 3: Indentation
	Section 3.1: Simple example
	Section 3.2: How Indentation is Parsed
	Section 3.3: Indentation Errors
Chapter 4: Comments and Documentation
	Section 4.1: Single line, inline and multiline comments
	Section 4.2: Programmatically accessing docstrings
	Section 4.3: Write documentation using docstrings
Chapter 5: Date and Time
	Section 5.1: Parsing a string into a timezone aware datetime object
	Section 5.2: Constructing timezone-aware datetimes
	Section 5.3: Computing time dierences
	Section 5.4: Basic datetime objects usage
	Section 5.5: Switching between time zones
	Section 5.6: Simple date arithmetic
	Section 5.7: Converting timestamp to datetime
	Section 5.8: Subtracting months from a date accurately
	Section 5.9: Parsing an arbitrary ISO 8601 timestamp with minimal libraries
	Section 5.10: Get an ISO 8601 timestamp
	Section 5.11: Parsing a string with a short time zone name into a timezone aware datetime object
	Section 5.12: Fuzzy datetime parsing (extracting datetime out of a text)
	Section 5.13: Iterate over dates
Chapter 6: Date Formatting
	Section 6.1: Time between two date-times
	Section 6.2: Outputting datetime object to string
	Section 6.3: Parsing string to datetime object
Chapter 7: Enum
	Section 7.1: Creating an enum (Python 2.4 through 3.3)
	Section 7.2: Iteration
Chapter 8: Set
	Section 8.1: Operations on sets
	Section 8.2: Get the unique elements of a list
	Section 8.3: Set of Sets
	Section 8.4: Set Operations using Methods and Builtins
	Section 8.5: Sets versus multisets
Chapter 9: Simple Mathematical Operators
	Section 9.1: Division
	Section 9.2: Addition
	Section 9.3: Exponentiation
	Section 9.4: Trigonometric Functions
	Section 9.5: Inplace Operations
	Section 9.6: Subtraction
	Section 9.7: Multiplication
	Section 9.8: Logarithms
	Section 9.9: Modulus
Chapter 10: Bitwise Operators
	Section 10.1: Bitwise NOT
	Section 10.2: Bitwise XOR (Exclusive OR)
	Section 10.3: Bitwise AND
	Section 10.4: Bitwise OR
	Section 10.5: Bitwise Left Shift
	Section 10.6: Bitwise Right Shift
	Section 10.7: Inplace Operations
Chapter 11: Boolean Operators
	Section 11.1: `and` and `or` are not guaranteed to return a boolean
	Section 11.2: A simple example
	Section 11.3: Short-circuit evaluation
	Section 11.4: and
	Section 11.5: or
	Section 11.6: not
Chapter 12: Operator Precedence
	Section 12.1: Simple Operator Precedence Examples in python
Chapter 13: Variable Scope and Binding
	Section 13.1: Nonlocal Variables
	Section 13.2: Global Variables
	Section 13.3: Local Variables
	Section 13.4: The del command
	Section 13.5: Functions skip class scope when looking up names
	Section 13.6: Local vs Global Scope
	Section 13.7: Binding Occurrence
Chapter 14: Conditionals
	Section 14.1: Conditional Expression (or "The Ternary Operator")
	Section 14.2: if, elif, and else
	Section 14.3: Truth Values
	Section 14.4: Boolean Logic Expressions
	Section 14.5: Using the cmp function to get the comparison result of two objects
	Section 14.6: Else statement
	Section 14.7: Testing if an object is None and assigning it
	Section 14.8: If statement
Chapter 15: Comparisons
	Section 15.1: Chain Comparisons
	Section 15.2: Comparison by `is` vs `==`
	Section 15.3: Greater than or less than
	Section 15.4: Not equal to
	Section 15.5: Equal To
	Section 15.6: Comparing Objects
Chapter 16: Loops
	Section 16.1: Break and Continue in Loops
	Section 16.2: For loops
	Section 16.3: Iterating over lists
	Section 16.4: Loops with an "else" clause
	Section 16.5: The Pass Statement
	Section 16.6: Iterating over dictionaries
	Section 16.7: The "half loop" do-while
	Section 16.8: Looping and Unpacking
	Section 16.9: Iterating dierent portion of a list with dierent step size
	Section 16.10: While Loop
Chapter 17: Arrays
	Section 17.1: Access individual elements through indexes
	Section 17.2: Basic Introduction to Arrays
	Section 17.3: Append any value to the array using append() method
	Section 17.4: Insert value in an array using insert() method
	Section 17.5: Extend python array using extend() method
	Section 17.6: Add items from list into array using fromlist() method
	Section 17.7: Remove any array element using remove() method
	Section 17.8: Remove last array element using pop() method
	Section 17.9: Fetch any element through its index using index() method
	Section 17.10: Reverse a python array using reverse() method
	Section 17.11: Get array buer information through buer_info() method
	Section 17.12: Check for number of occurrences of an element using count() method
	Section 17.13: Convert array to string using tostring() method
	Section 17.14: Convert array to a python list with same elements using tolist() method
	Section 17.15: Append a string to char array using fromstring() method
Chapter 18: Multidimensional arrays
	Section 18.1: Lists in lists
	Section 18.2: Lists in lists in lists in..
Chapter 19: Dictionary
	Section 19.1: Introduction to Dictionary
	Section 19.2: Avoiding KeyError Exceptions
	Section 19.3: Iterating Over a Dictionary
	Section 19.4: Dictionary with default values
	Section 19.5: Merging dictionaries
	Section 19.6: Accessing keys and values
	Section 19.7: Accessing values of a dictionary
	Section 19.8: Creating a dictionary
	Section 19.9: Creating an ordered dictionary
	Section 19.10: Unpacking dictionaries using the ** operator
	Section 19.11: The trailing comma
	Section 19.12: The dict() constructor
	Section 19.13: Dictionaries Example
	Section 19.14: All combinations of dictionary values
Chapter 20: List
	Section 20.1: List methods and supported operators
	Section 20.2: Accessing list values
	Section 20.3: Checking if list is empty
	Section 20.4: Iterating over a list
	Section 20.5: Checking whether an item is in a list
	Section 20.6: Any and All
	Section 20.7: Reversing list elements
	Section 20.8: Concatenate and Merge lists
	Section 20.9: Length of a list
	Section 20.10: Remove duplicate values in list
	Section 20.11: Comparison of lists
	Section 20.12: Accessing values in nested list
	Section 20.13: Initializing a List to a Fixed Number of Elements
Chapter 21: List comprehensions
	Section 21.1: List Comprehensions
	Section 21.2: Conditional List Comprehensions
	Section 21.3: Avoid repetitive and expensive operations using conditional clause
	Section 21.4: Dictionary Comprehensions
	Section 21.5: List Comprehensions with Nested Loops
	Section 21.6: Generator Expressions
	Section 21.7: Set Comprehensions
	Section 21.8: Refactoring filter and map to list comprehensions
	Section 21.9: Comprehensions involving tuples
	Section 21.10: Counting Occurrences Using Comprehension
	Section 21.11: Changing Types in a List
	Section 21.12: Nested List Comprehensions
	Section 21.13: Iterate two or more list simultaneously within list comprehension
Chapter 22: List slicing (selecting parts of lists)
	Section 22.1: Using the third "step" argument
	Section 22.2: Selecting a sublist from a list
	Section 22.3: Reversing a list with slicing
	Section 22.4: Shifting a list using slicing
Chapter 23: groupby()
	Section 23.1: Example 4
	Section 23.2: Example 2
	Section 23.3: Example 3
Chapter 24: Linked lists
	Section 24.1: Single linked list example
Chapter 25: Linked List Node
	Section 25.1: Write a simple Linked List Node in python
Chapter 26: Filter
	Section 26.1: Basic use of filter
	Section 26.2: Filter without function
	Section 26.3: Filter as short-circuit check
	Section 26.4: Complementary function: filterfalse, ifilterfalse
Chapter 27: Heapq
	Section 27.1: Largest and smallest items in a collection
	Section 27.2: Smallest item in a collection
Chapter 28: Tuple
	Section 28.1: Tuple
	Section 28.2: Tuples are immutable
	Section 28.3: Packing and Unpacking Tuples
	Section 28.4: Built-in Tuple Functions
	Section 28.5: Tuple Are Element-wise Hashable and Equatable
	Section 28.6: Indexing Tuples
	Section 28.7: Reversing Elements
Chapter 29: Basic Input and Output
	Section 29.1: Using the print function
	Section 29.2: Input from a File
	Section 29.3: Read from stdin
	Section 29.4: Using input() and raw_input()
	Section 29.5: Function to prompt user for a number
	Section 29.6: Printing a string without a newline at the end
Chapter 30: Files & Folders I/O
	Section 30.1: File modes
	Section 30.2: Reading a file line-by-line
	Section 30.3: Iterate files (recursively)
	Section 30.4: Getting the full contents of a file
	Section 30.5: Writing to a file
	Section 30.6: Check whether a file or path exists
	Section 30.7: Random File Access Using mmap
	Section 30.8: Replacing text in a file
	Section 30.9: Checking if a file is empty
	Section 30.10: Read a file between a range of lines
	Section 30.11: Copy a directory tree
	Section 30.12: Copying contents of one file to a dierent file
Chapter 31: os.path
	Section 31.1: Join Paths
	Section 31.2: Path Component Manipulation
	Section 31.3: Get the parent directory
	Section 31.4: If the given path exists
	Section 31.5: check if the given path is a directory, file, symbolic link, mount point etc
	Section 31.6: Absolute Path from Relative Path
Chapter 32: Iterables and Iterators
	Section 32.1: Iterator vs Iterable vs Generator
	Section 32.2: Extract values one by one
	Section 32.3: Iterating over entire iterable
	Section 32.4: Verify only one element in iterable
	Section 32.5: What can be iterable
	Section 32.6: Iterator isn't reentrant!
Chapter 33: Functions
	Section 33.1: Defining and calling simple functions
	Section 33.2: Defining a function with an arbitrary number of arguments
	Section 33.3: Lambda (Inline/Anonymous) Functions
	Section 33.4: Defining a function with optional arguments
	Section 33.5: Defining a function with optional mutable arguments
	Section 33.6: Argument passing and mutability
	Section 33.7: Returning values from functions
	Section 33.8: Closure
	Section 33.9: Forcing the use of named parameters
	Section 33.10: Nested functions
	Section 33.11: Recursion limit
	Section 33.12: Recursive Lambda using assigned variable
	Section 33.13: Recursive functions
	Section 33.14: Defining a function with arguments
	Section 33.15: Iterable and dictionary unpacking
	Section 33.16: Defining a function with multiple arguments
Chapter 34: Defining functions with list arguments
	Section 34.1: Function and Call
Chapter 35: Functional Programming in Python
	Section 35.1: Lambda Function
	Section 35.2: Map Function
	Section 35.3: Reduce Function
	Section 35.4: Filter Function
Chapter 36: Partial functions
	Section 36.1: Raise the power
Chapter 37: Decorators
	Section 37.1: Decorator function
	Section 37.2: Decorator class
	Section 37.3: Decorator with arguments (decorator factory)
	Section 37.4: Making a decorator look like the decorated function
	Section 37.5: Using a decorator to time a function
	Section 37.6: Create singleton class with a decorator
Chapter 38: Classes
	Section 38.1: Introduction to classes
	Section 38.2: Bound, unbound, and static methods
	Section 38.3: Basic inheritance
	Section 38.4: Monkey Patching
	Section 38.5: New-style vs. old-style classes
	Section 38.6: Class methods: alternate initializers
	Section 38.7: Multiple Inheritance
	Section 38.8: Properties
	Section 38.9: Default values for instance variables
	Section 38.10: Class and instance variables
	Section 38.11: Class composition
	Section 38.12: Listing All Class Members
	Section 38.13: Singleton class
	Section 38.14: Descriptors and Dotted Lookups
Chapter 39: Metaclasses
	Section 39.1: Basic Metaclasses
	Section 39.2: Singletons using metaclasses
	Section 39.3: Using a metaclass
	Section 39.4: Introduction to Metaclasses
	Section 39.5: Custom functionality with metaclasses
	Section 39.6: The default metaclass
Chapter 40: String Formatting
	Section 40.1: Basics of String Formatting
	Section 40.2: Alignment and padding
	Section 40.3: Format literals (f-string)
	Section 40.4: Float formatting
	Section 40.5: Named placeholders
	Section 40.6: String formatting with datetime
	Section 40.7: Formatting Numerical Values
	Section 40.8: Nested formatting
	Section 40.9: Format using Getitem and Getattr
	Section 40.10: Padding and truncating strings, combined
	Section 40.11: Custom formatting for a class
Chapter 41: String Methods
	Section 41.1: Changing the capitalization of a string
	Section 41.2: str.translate: Translating characters in a string
	Section 41.3: str.format and f-strings: Format values into a string
	Section 41.4: String module's useful constants
	Section 41.5: Stripping unwanted leading/trailing characters from a string
	Section 41.6: Reversing a string
	Section 41.7: Split a string based on a delimiter into a list of strings
	Section 41.8: Replace all occurrences of one substring with another substring
	Section 41.9: Testing what a string is composed of
	Section 41.10: String Contains
	Section 41.11: Join a list of strings into one string
	Section 41.12: Counting number of times a substring appears in a string
	Section 41.13: Case insensitive string comparisons
	Section 41.14: Justify strings
	Section 41.15: Test the starting and ending characters of a string
	Section 41.16: Conversion between str or bytes data and unicode characters
Chapter 42: Using loops within functions
	Section 42.1: Return statement inside loop in a function
Chapter 43: Importing modules
	Section 43.1: Importing a module
	Section 43.2: The __all__ special variable
	Section 43.3: Import modules from an arbitrary filesystem location
	Section 43.4: Importing all names from a module
	Section 43.5: Programmatic importing
	Section 43.6: PEP8 rules for Imports
	Section 43.7: Importing specific names from a module
	Section 43.8: Importing submodules
	Section 43.9: Re-importing a module
	Section 43.10: __import__() function
Chapter 44: Dierence between Module and Package
	Section 44.1: Modules
	Section 44.2: Packages
Chapter 45: Math Module
	Section 45.1: Rounding: round, floor, ceil, trunc
	Section 45.2: Trigonometry
	Section 45.3: Pow for faster exponentiation
	Section 45.4: Infinity and NaN ("not a number")
	Section 45.5: Logarithms
	Section 45.6: Constants
	Section 45.7: Imaginary Numbers
	Section 45.8: Copying signs
	Section 45.9: Complex numbers and the cmath module
Chapter 46: Complex math
	Section 46.1: Advanced complex arithmetic
	Section 46.2: Basic complex arithmetic
Chapter 47: Collections module
	Section 47.1: collections.Counter
	Section 47.2: collections.OrderedDict
	Section 47.3: collections.defaultdict
	Section 47.4: collections.namedtuple
	Section 47.5: collections.deque
	Section 47.6: collections.ChainMap
Chapter 48: Operator module
	Section 48.1: Itemgetter
	Section 48.2: Operators as alternative to an infix operator
	Section 48.3: Methodcaller
Chapter 49: JSON Module
	Section 49.1: Storing data in a file
	Section 49.2: Retrieving data from a file
	Section 49.3: Formatting JSON output
	Section 49.4: `load` vs `loads`, `dump` vs `dumps`
	Section 49.5: Calling `json.tool` from the command line to pretty-print JSON output
	Section 49.6: JSON encoding custom objects
	Section 49.7: Creating JSON from Python dict
	Section 49.8: Creating Python dict from JSON
Chapter 50: Sqlite3 Module
	Section 50.1: Sqlite3 - Not require separate server process
	Section 50.2: Getting the values from the database and Error handling
Chapter 51: The os Module
	Section 51.1: makedirs - recursive directory creation
	Section 51.2: Create a directory
	Section 51.3: Get current directory
	Section 51.4: Determine the name of the operating system
	Section 51.5: Remove a directory
	Section 51.6: Follow a symlink (POSIX)
	Section 51.7: Change permissions on a file
Chapter 52: The locale Module
	Section 52.1: Currency Formatting US Dollars Using the locale Module
Chapter 53: Itertools Module
	Section 53.1: Combinations method in Itertools Module
	Section 53.2: itertools.dropwhile
	Section 53.3: Zipping two iterators until they are both exhausted
	Section 53.4: Take a slice of a generator
	Section 53.5: Grouping items from an iterable object using a function
	Section 53.6: itertools.takewhile
	Section 53.7: itertools.permutations
	Section 53.8: itertools.repeat
	Section 53.9: Get an accumulated sum of numbers in an iterable
	Section 53.10: Cycle through elements in an iterator
	Section 53.11: itertools.product
	Section 53.12: itertools.count
	Section 53.13: Chaining multiple iterators together
Chapter 54: Asyncio Module
	Section 54.1: Coroutine and Delegation Syntax
	Section 54.2: Asynchronous Executors
	Section 54.3: Using UVLoop
	Section 54.4: Synchronization Primitive: Event
	Section 54.5: A Simple Websocket
	Section 54.6: Common Misconception about asyncio
Chapter 55: Random module
	Section 55.1: Creating a random user password
	Section 55.2: Create cryptographically secure random numbers
	Section 55.3: Random and sequences: shue, choice and sample
	Section 55.4: Creating random integers and floats: randint, randrange, random, and uniform
	Section 55.5: Reproducible random numbers: Seed and State
	Section 55.6: Random Binary Decision
Chapter 56: Functools Module
	Section 56.1: partial
	Section 56.2: cmp_to_key
	Section 56.3: lru_cache
	Section 56.4: total_ordering
	Section 56.5: reduce
Chapter 57: The dis module
	Section 57.1: What is Python bytecode?
	Section 57.2: Constants in the dis module
	Section 57.3: Disassembling modules
Chapter 58: The base64 Module
	Section 58.1: Encoding and Decoding Base64
	Section 58.2: Encoding and Decoding Base32
	Section 58.3: Encoding and Decoding Base16
	Section 58.4: Encoding and Decoding ASCII85
	Section 58.5: Encoding and Decoding Base85
Chapter 59: Queue Module
	Section 59.1: Simple example
Chapter 60: Deque Module
	Section 60.1: Basic deque using
	Section 60.2: Available methods in deque
	Section 60.3: limit deque size
	Section 60.4: Breadth First Search
Chapter 61: Webbrowser Module
	Section 61.1: Opening a URL with Default Browser
	Section 61.2: Opening a URL with Dierent Browsers
Chapter 62: tkinter
	Section 62.1: Geometry Managers
	Section 62.2: A minimal tkinter Application
Chapter 63: pyautogui module
	Section 63.1: Mouse Functions
	Section 63.2: Keyboard Functions
	Section 63.3: Screenshot And Image Recognition
Chapter 64: Indexing and Slicing
	Section 64.1: Basic Slicing
	Section 64.2: Reversing an object
	Section 64.3: Slice assignment
	Section 64.4: Making a shallow copy of an array
	Section 64.5: Indexing custom classes: __getitem__, __setitem__ and __delitem__
	Section 64.6: Basic Indexing
Chapter 65: Plotting with Matplotlib
	Section 65.1: Plots with Common X-axis but dierent Y-axis : Using twinx()
	Section 65.2: Plots with common Y-axis and dierent X-axis using twiny()
	Section 65.3: A Simple Plot in Matplotlib
	Section 65.4: Adding more features to a simple plot : axis labels, title, axis ticks, grid, and legend
	Section 65.5: Making multiple plots in the same figure by superimposition similar to MATLAB
	Section 65.6: Making multiple Plots in the same figure using plot superimposition with separate plot commands
Chapter 66: graph-tool
	Section 66.1: PyDotPlus
	Section 66.2: PyGraphviz
Chapter 67: Generators
	Section 67.1: Introduction
	Section 67.2: Infinite sequences
	Section 67.3: Sending objects to a generator
	Section 67.4: Yielding all values from another iterable
	Section 67.5: Iteration
	Section 67.6: The next() function
	Section 67.7: Coroutines
	Section 67.8: Refactoring list-building code
	Section 67.9: Yield with recursion: recursively listing all files in a directory
	Section 67.10: Generator expressions
	Section 67.11: Using a generator to find Fibonacci Numbers
	Section 67.12: Searching
	Section 67.13: Iterating over generators in parallel
Chapter 68: Reduce
	Section 68.1: Overview
	Section 68.2: Using reduce
	Section 68.3: Cumulative product
	Section 68.4: Non short-circuit variant of any/all
Chapter 69: Map Function
	Section 69.1: Basic use of map, itertools.imap and future_builtins.map
	Section 69.2: Mapping each value in an iterable
	Section 69.3: Mapping values of dierent iterables
	Section 69.4: Transposing with Map: Using "None" as function argument (python 2.x only)
	Section 69.5: Series and Parallel Mapping
Chapter 70: Exponentiation
	Section 70.1: Exponentiation using builtins: ** and pow()
	Section 70.2: Square root: math.sqrt() and cmath.sqrt
	Section 70.3: Modular exponentiation: pow() with 3 arguments
	Section 70.4: Computing large integer roots
	Section 70.5: Exponentiation using the math module: math.pow()
	Section 70.6: Exponential function: math.exp() and cmath.exp()
	Section 70.7: Exponential function minus 1: math.expm1()
	Section 70.8: Magic methods and exponentiation: builtin, math and cmath
	Section 70.9: Roots: nth-root with fractional exponents
Chapter 71: Searching
	Section 71.1: Searching for an element
	Section 71.2: Searching in custom classes: __contains__ and __iter__
	Section 71.3: Getting the index for strings: str.index(), str.rindex() and str.find(), str.rfind()
	Section 71.4: Getting the index list and tuples: list.index(), tuple.index()
	Section 71.5: Searching key(s) for a value in dict
	Section 71.6: Getting the index for sorted sequences: bisect.bisect_left()
	Section 71.7: Searching nested sequences
Chapter 72: Sorting, Minimum and Maximum
	Section 72.1: Make custom classes orderable
	Section 72.2: Special case: dictionaries
	Section 72.3: Using the key argument
	Section 72.4: Default Argument to max, min
	Section 72.5: Getting a sorted sequence
	Section 72.6: Extracting N largest or N smallest items from an iterable
	Section 72.7: Getting the minimum or maximum of several values
	Section 72.8: Minimum and Maximum of a sequence
Chapter 73: Counting
	Section 73.1: Counting all occurrence of all items in an iterable: collections.Counter
	Section 73.2: Getting the most common value(-s): collections.Counter.most_common()
	Section 73.3: Counting the occurrences of one item in a sequence: list.count() and tuple.count()
	Section 73.4: Counting the occurrences of a substring in a string: str.count()
	Section 73.5: Counting occurrences in numpy array
Chapter 74: The Print Function
	Section 74.1: Print basics
	Section 74.2: Print parameters
Chapter 75: Regular Expressions (Regex)
	Section 75.1: Matching the beginning of a string
	Section 75.2: Searching
	Section 75.3: Precompiled patterns
	Section 75.4: Flags
	Section 75.5: Replacing
	Section 75.6: Find All Non-Overlapping Matches
	Section 75.7: Checking for allowed characters
	Section 75.8: Splitting a string using regular expressions
	Section 75.9: Grouping
	Section 75.10: Escaping Special Characters
	Section 75.11: Match an expression only in specific locations
	Section 75.12: Iterating over matches using `re.finditer`
Chapter 76: Copying data
	Section 76.1: Copy a dictionary
	Section 76.2: Performing a shallow copy
	Section 76.3: Performing a deep copy
	Section 76.4: Performing a shallow copy of a list
	Section 76.5: Copy a set
Chapter 77: Context Managers (“with” Statement)
	Section 77.1: Introduction to context managers and the with statement
	Section 77.2: Writing your own context manager
	Section 77.3: Writing your own contextmanager using generator syntax
	Section 77.4: Multiple context managers
	Section 77.5: Assigning to a target
	Section 77.6: Manage Resources
Chapter 78: The __name__ special variable
	Section 78.1: __name__ == '__main__'
	Section 78.2: Use in logging
	Section 78.3: function_class_or_module.__name__
Chapter 79: Checking Path Existence and Permissions
	Section 79.1: Perform checks using os.access
Chapter 80: Creating Python packages
	Section 80.1: Introduction
	Section 80.2: Uploading to PyPI
	Section 80.3: Making package executable
Chapter 81: Usage of "pip" module: PyPI Package Manager
	Section 81.1: Example use of commands
	Section 81.2: Handling ImportError Exception
	Section 81.3: Force install
Chapter 82: pip: PyPI Package Manager
	Section 82.1: Install Packages
	Section 82.2: To list all packages installed using `pip`
	Section 82.3: Upgrade Packages
	Section 82.4: Uninstall Packages
	Section 82.5: Updating all outdated packages on Linux
	Section 82.6: Updating all outdated packages on Windows
	Section 82.7: Create a requirements.txt file of all packages on the system
	Section 82.8: Using a certain Python version with pip
	Section 82.9: Create a requirements.txt file of packages only in the current virtualenv
	Section 82.10: Installing packages not yet on pip as wheels
Chapter 83: Parsing Command Line arguments
	Section 83.1: Hello world in argparse
	Section 83.2: Using command line arguments with argv
	Section 83.3: Setting mutually exclusive arguments with argparse
	Section 83.4: Basic example with docopt
	Section 83.5: Custom parser error message with argparse
	Section 83.6: Conceptual grouping of arguments with argparse.add_argument_group()
	Section 83.7: Advanced example with docopt and docopt_dispatch
Chapter 84: Subprocess Library
	Section 84.1: More flexibility with Popen
	Section 84.2: Calling External Commands
	Section 84.3: How to create the command list argument
Chapter 85: setup.py
	Section 85.1: Purpose of setup.py
	Section 85.2: Using source control metadata in setup.py
	Section 85.3: Adding command line scripts to your python package
	Section 85.4: Adding installation options
Chapter 86: Recursion
	Section 86.1: The What, How, and When of Recursion
	Section 86.2: Tree exploration with recursion
	Section 86.3: Sum of numbers from 1 to n
	Section 86.4: Increasing the Maximum Recursion Depth
	Section 86.5: Tail Recursion - Bad Practice
	Section 86.6: Tail Recursion Optimization Through Stack Introspection
Chapter 87: Type Hints
	Section 87.1: Adding types to a function
	Section 87.2: NamedTuple
	Section 87.3: Generic Types
	Section 87.4: Variables and Attributes
	Section 87.5: Class Members and Methods
	Section 87.6: Type hints for keyword arguments
Chapter 88: Exceptions
	Section 88.1: Catching Exceptions
	Section 88.2: Do not catch everything!
	Section 88.3: Re-raising exceptions
	Section 88.4: Catching multiple exceptions
	Section 88.5: Exception Hierarchy
	Section 88.6: Else
	Section 88.7: Raising Exceptions
	Section 88.8: Creating custom exception types
	Section 88.9: Practical examples of exception handling
	Section 88.10: Exceptions are Objects too
	Section 88.11: Running clean-up code with finally
	Section 88.12: Chain exceptions with raise from
Chapter 89: Raise Custom Errors / Exceptions
	Section 89.1: Custom Exception
	Section 89.2: Catch custom Exception
Chapter 90: Commonwealth Exceptions
	Section 90.1: Other Errors
	Section 90.2: NameError: name '???' is not defined
	Section 90.3: TypeErrors
	Section 90.4: Syntax Error on good code
	Section 90.5: IndentationErrors (or indentation SyntaxErrors)
Chapter 91: urllib
	Section 91.1: HTTP GET
	Section 91.2: HTTP POST
	Section 91.3: Decode received bytes according to content type encoding
Chapter 92: Web scraping with Python
	Section 92.1: Scraping using the Scrapy framework
	Section 92.2: Scraping using Selenium WebDriver
	Section 92.3: Basic example of using requests and lxml to scrape some data
	Section 92.4: Maintaining web-scraping session with requests
	Section 92.5: Scraping using BeautifulSoup4
	Section 92.6: Simple web content download with urllib.request
	Section 92.7: Modify Scrapy user agent
	Section 92.8: Scraping with curl
Chapter 93: HTML Parsing
	Section 93.1: Using CSS selectors in BeautifulSoup
	Section 93.2: PyQuery
	Section 93.3: Locate a text after an element in BeautifulSoup
Chapter 94: Manipulating XML
	Section 94.1: Opening and reading using an ElementTree
	Section 94.2: Create and Build XML Documents
	Section 94.3: Modifying an XML File
	Section 94.4: Searching the XML with XPath
	Section 94.5: Opening and reading large XML files using iterparse (incremental parsing)
Chapter 95: Python Requests Post
	Section 95.1: Simple Post
	Section 95.2: Form Encoded Data
	Section 95.3: File Upload
	Section 95.4: Responses
	Section 95.5: Authentication
	Section 95.6: Proxies
Chapter 96: Distribution
	Section 96.1: py2app
	Section 96.2: cx_Freeze
Chapter 97: Property Objects
	Section 97.1: Using the @property decorator for read-write properties
	Section 97.2: Using the @property decorator
	Section 97.3: Overriding just a getter, setter or a deleter of a property object
	Section 97.4: Using properties without decorators
Chapter 98: Overloading
	Section 98.1: Operator overloading
	Section 98.2: Magic/Dunder Methods
	Section 98.3: Container and sequence types
	Section 98.4: Callable types
	Section 98.5: Handling unimplemented behaviour
Chapter 99: Polymorphism
	Section 99.1: Duck Typing
	Section 99.2: Basic Polymorphism
Chapter 100: Method Overriding
	Section 100.1: Basic method overriding
Chapter 101: User-Defined Methods
	Section 101.1: Creating user-defined method objects
	Section 101.2: Turtle example
Chapter 102: String representations of class instances: __str__ and __repr__ methods
	Section 102.1: Motivation
	Section 102.2: Both methods implemented, eval-round-trip style __repr__()
Chapter 103: Debugging
	Section 103.1: Via IPython and ipdb
	Section 103.2: The Python Debugger: Step-through Debugging with _pdb_
	Section 103.3: Remote debugger
Chapter 104: Reading and Writing CSV
	Section 104.1: Using pandas
	Section 104.2: Writing a TSV file
Chapter 105: Writing to CSV from String or List
	Section 105.1: Basic Write Example
	Section 105.2: Appending a String as a newline in a CSV file
Chapter 106: Dynamic code execution with `exec` and `eval`
	Section 106.1: Executing code provided by untrusted user using exec, eval, or ast.literal_eval
	Section 106.2: Evaluating a string containing a Python literal with ast.literal_eval
	Section 106.3: Evaluating statements with exec
	Section 106.4: Evaluating an expression with eval
	Section 106.5: Precompiling an expression to evaluate it multiple times
	Section 106.6: Evaluating an expression with eval using custom globals
Chapter 107: PyInstaller - Distributing Python Code
	Section 107.1: Installation and Setup
	Section 107.2: Using Pyinstaller
	Section 107.3: Bundling to One Folder
	Section 107.4: Bundling to a Single File
Chapter 108: Data Visualization with Python
	Section 108.1: Seaborn
	Section 108.2: Matplotlib
	Section 108.3: Plotly
	Section 108.4: MayaVI
Chapter 109: The Interpreter (Command Line Console)
	Section 109.1: Getting general help
	Section 109.2: Referring to the last expression
	Section 109.3: Opening the Python console
	Section 109.4: The PYTHONSTARTUP variable
	Section 109.5: Command line arguments
	Section 109.6: Getting help about an object
Chapter 110: *args and **kwargs
	Section 110.1: Using **kwargs when writing functions
	Section 110.2: Using *args when writing functions
	Section 110.3: Populating kwarg values with a dictionary
	Section 110.4: Keyword-only and Keyword-required arguments
	Section 110.5: Using **kwargs when calling functions
	Section 110.6: **kwargs and default values
	Section 110.7: Using *args when calling functions
Chapter 111: Garbage Collection
	Section 111.1: Reuse of primitive objects
	Section 111.2: Eects of the del command
	Section 111.3: Reference Counting
	Section 111.4: Garbage Collector for Reference Cycles
	Section 111.5: Forcefully deallocating objects
	Section 111.6: Viewing the refcount of an object
	Section 111.7: Do not wait for the garbage collection to clean up
	Section 111.8: Managing garbage collection
Chapter 112: Pickle data serialisation
	Section 112.1: Using Pickle to serialize and deserialize an object
	Section 112.2: Customize Pickled Data
Chapter 113: Binary Data
	Section 113.1: Format a list of values into a byte object
	Section 113.2: Unpack a byte object according to a format string
	Section 113.3: Packing a structure
Chapter 114: Idioms
	Section 114.1: Dictionary key initializations
	Section 114.2: Switching variables
	Section 114.3: Use truth value testing
	Section 114.4: Test for "__main__" to avoid unexpected code execution
Chapter 115: Data Serialization
	Section 115.1: Serialization using JSON
	Section 115.2: Serialization using Pickle
Chapter 116: Multiprocessing
	Section 116.1: Running Two Simple Processes
	Section 116.2: Using Pool and Map
Chapter 117: Multithreading
	Section 117.1: Basics of multithreading
	Section 117.2: Communicating between threads
	Section 117.3: Creating a worker pool
	Section 117.4: Advanced use of multithreads
	Section 117.5: Stoppable Thread with a while Loop
Chapter 118: Processes and Threads
	Section 118.1: Global Interpreter Lock
	Section 118.2: Running in Multiple Threads
	Section 118.3: Running in Multiple Processes
	Section 118.4: Sharing State Between Threads
	Section 118.5: Sharing State Between Processes
Chapter 119: Python concurrency
	Section 119.1: The multiprocessing module
	Section 119.2: The threading module
	Section 119.3: Passing data between multiprocessing processes
Chapter 120: Parallel computation
	Section 120.1: Using the multiprocessing module to parallelise tasks
	Section 120.2: Using a C-extension to parallelize tasks
	Section 120.3: Using Parent and Children scripts to execute code in parallel
	Section 120.4: Using PyPar module to parallelize
Chapter 121: Sockets
	Section 121.1: Raw Sockets on Linux
	Section 121.2: Sending data via UDP
	Section 121.3: Receiving data via UDP
	Section 121.4: Sending data via TCP
	Section 121.5: Multi-threaded TCP Socket Server
Chapter 122: Websockets
	Section 122.1: Simple Echo with aiohttp
	Section 122.2: Wrapper Class with aiohttp
	Section 122.3: Using Autobahn as a Websocket Factory
Chapter 123: Sockets And Message Encryption/Decryption Between Client and Server
	Section 123.1: Server side Implementation
	Section 123.2: Client side Implementation
Chapter 124: Python Networking
	Section 124.1: Creating a Simple Http Server
	Section 124.2: Creating a TCP server
	Section 124.3: Creating a UDP Server
	Section 124.4: Start Simple HttpServer in a thread and open the browser
	Section 124.5: The simplest Python socket client-server example
Chapter 125: Python HTTP Server
	Section 125.1: Running a simple HTTP server
	Section 125.2: Serving files
	Section 125.3: Basic handling of GET, POST, PUT using BaseHTTPRequestHandler
	Section 125.4: Programmatic API of SimpleHTTPServer
Chapter 126: Flask
	Section 126.1: Files and Templates
	Section 126.2: The basics
	Section 126.3: Routing URLs
	Section 126.4: HTTP Methods
	Section 126.5: Jinja Templating
	Section 126.6: The Request Object
Chapter 127: Introduction to RabbitMQ using AMQPStorm
	Section 127.1: How to consume messages from RabbitMQ
	Section 127.2: How to publish messages to RabbitMQ
	Section 127.3: How to create a delayed queue in RabbitMQ
Chapter 128: Descriptor
	Section 128.1: Simple descriptor
	Section 128.2: Two-way conversions
Chapter 129: tempfile NamedTemporaryFile
	Section 129.1: Create (and write to a) known, persistent temporary file
Chapter 130: Input, Subset and Output External Data Files using Pandas
	Section 130.1: Basic Code to Import, Subset and Write External Data Files Using Pandas
Chapter 131: Unzipping Files
	Section 131.1: Using Python ZipFile.extractall() to decompress a ZIP file
	Section 131.2: Using Python TarFile.extractall() to decompress a tarball
Chapter 132: Working with ZIP archives
	Section 132.1: Examining Zipfile Contents
	Section 132.2: Opening Zip Files
	Section 132.3: Extracting zip file contents to a directory
	Section 132.4: Creating new archives
Chapter 133: Getting start with GZip
	Section 133.1: Read and write GNU zip files
Chapter 134: Stack
	Section 134.1: Creating a Stack class with a List Object
	Section 134.2: Parsing Parentheses
Chapter 135: Working around the Global Interpreter Lock (GIL)
	Section 135.1: Multiprocessing.Pool
	Section 135.2: Cython nogil:
Chapter 136: Deployment
	Section 136.1: Uploading a Conda Package
Chapter 137: Logging
	Section 137.1: Introduction to Python Logging
	Section 137.2: Logging exceptions
Chapter 138: Web Server Gateway Interface (WSGI)
	Section 138.1: Server Object (Method)
Chapter 139: Python Server Sent Events
	Section 139.1: Flask SSE
	Section 139.2: Asyncio SSE
Chapter 140: Alternatives to switch statement from other languages
	Section 140.1: Use what the language oers: the if/else construct
	Section 140.2: Use a dict of functions
	Section 140.3: Use class introspection
	Section 140.4: Using a context manager
Chapter 141: List destructuring (aka packing and unpacking)
	Section 141.1: Destructuring assignment
	Section 141.2: Packing function arguments
	Section 141.3: Unpacking function arguments
Chapter 142: Accessing Python source code and bytecode
	Section 142.1: Display the bytecode of a function
	Section 142.2: Display the source code of an object
	Section 142.3: Exploring the code object of a function
Chapter 143: Mixins
	Section 143.1: Mixin
	Section 143.2: Overriding Methods in Mixins
Chapter 144: Attribute Access
	Section 144.1: Basic Attribute Access using the Dot Notation
	Section 144.2: Setters, Getters & Properties
Chapter 145: ArcPy
	Section 145.1: createDissolvedGDB to create a file gdb on the workspace
	Section 145.2: Printing one field's value for all rows of feature class in file geodatabase using Search Cursor
Chapter 146: Abstract Base Classes (abc)
	Section 146.1: Setting the ABCMeta metaclass
	Section 146.2: Why/How to use ABCMeta and @abstractmethod
Chapter 147: Plugin and Extension Classes
	Section 147.1: Mixins
	Section 147.2: Plugins with Customized Classes
Chapter 148: Immutable datatypes(int, float, str, tuple and frozensets)
	Section 148.1: Individual characters of strings are not assignable
	Section 148.2: Tuple's individual members aren't assignable
	Section 148.3: Frozenset's are immutable and not assignable
Chapter 149: Incompatibilities moving from Python 2 to Python 3
	Section 149.1: Integer Division
	Section 149.2: Unpacking Iterables
	Section 149.3: Strings: Bytes versus Unicode
	Section 149.4: Print statement vs. Print function
	Section 149.5: Dierences between range and xrange functions
	Section 149.6: Raising and handling Exceptions
	Section 149.7: Leaked variables in list comprehension
	Section 149.8: True, False and None
	Section 149.9: User Input
	Section 149.10: Comparison of dierent types
	Section 149.11: .next() method on iterators renamed
	Section 149.12: filter(), map() and zip() return iterators instead of sequences
	Section 149.13: Renamed modules
	Section 149.14: Removed operators <> and ``, synonymous with != and repr()
	Section 149.15: long vs. int
	Section 149.16: All classes are "new-style classes" in Python 3
	Section 149.17: Reduce is no longer a built-in
	Section 149.18: Absolute/Relative Imports
	Section 149.19: map()
	Section 149.20: The round() function tie-breaking and return type
	Section 149.21: File I/O
	Section 149.22: cmp function removed in Python 3
	Section 149.23: Octal Constants
	Section 149.24: Return value when writing to a file object
	Section 149.25: exec statement is a function in Python 3
	Section 149.26: encode/decode to hex no longer available
	Section 149.27: Dictionary method changes
	Section 149.28: Class Boolean Value
	Section 149.29: hasattr function bug in Python 2
Chapter 150: 2to3 tool
	Section 150.1: Basic Usage
Chapter 151: Non-ocial Python implementations
	Section 151.1: IronPython
	Section 151.2: Jython
	Section 151.3: Transcrypt
Chapter 152: Abstract syntax tree
	Section 152.1: Analyze functions in a python script
Chapter 153: Unicode and bytes
	Section 153.1: Encoding/decoding error handling
	Section 153.2: File I/O
	Section 153.3: Basics
Chapter 154: Python Serial Communication (pyserial)
	Section 154.1: Initialize serial device
	Section 154.2: Read from serial port
	Section 154.3: Check what serial ports are available on your machine
Chapter 155: Neo4j and Cypher using Py2Neo
	Section 155.1: Adding Nodes to Neo4j Graph
	Section 155.2: Importing and Authenticating
	Section 155.3: Adding Relationships to Neo4j Graph
	Section 155.4: Query 1 : Autocomplete on News Titles
	Section 155.5: Query 2 : Get News Articles by Location on a particular date
	Section 155.6: Cypher Query Samples
Chapter 156: Basic Curses with Python
	Section 156.1: The wrapper() helper function
	Section 156.2: Basic Invocation Example
Chapter 157: Templates in python
	Section 157.1: Simple data output program using template
	Section 157.2: Changing delimiter
Chapter 158: Pillow
	Section 158.1: Read Image File
	Section 158.2: Convert files to JPEG
Chapter 159: The pass statement
	Section 159.1: Ignore an exception
	Section 159.2: Create a new Exception that can be caught
Chapter 160: CLI subcommands with precise help output
	Section 160.1: Native way (no libraries)
	Section 160.2: argparse (default help formatter)
	Section 160.3: argparse (custom help formatter)
Chapter 161: Database Access
	Section 161.1: SQLite
	Section 161.2: Accessing MySQL database using MySQLdb
	Section 161.3: Connection
	Section 161.4: PostgreSQL Database access using psycopg2
	Section 161.5: Oracle database
	Section 161.6: Using sqlalchemy
Chapter 162: Connecting Python to SQL Server
	Section 162.1: Connect to Server, Create Table, Query Data
Chapter 163: PostgreSQL
	Section 163.1: Getting Started
Chapter 164: Python and Excel
	Section 164.1: Read the excel data using xlrd module
	Section 164.2: Format Excel files with xlsxwriter
	Section 164.3: Put list data into a Excel's file
	Section 164.4: OpenPyXL
	Section 164.5: Create excel charts with xlsxwriter
Chapter 165: Turtle Graphics
	Section 165.1: Ninja Twist (Turtle Graphics)
Chapter 166: Python Persistence
	Section 166.1: Python Persistence
	Section 166.2: Function utility for save and load
Chapter 167: Design Patterns
	Section 167.1: Introduction to design patterns and Singleton Pattern
	Section 167.2: Strategy Pattern
	Section 167.3: Proxy
Chapter 168: hashlib
	Section 168.1: MD5 hash of a string
	Section 168.2: algorithm provided by OpenSSL
Chapter 169: Creating a Windows service using Python
	Section 169.1: A Python script that can be run as a service
	Section 169.2: Running a Flask web application as a service
Chapter 170: Mutable vs Immutable (and Hashable) in Python
	Section 170.1: Mutable vs Immutable
	Section 170.2: Mutable and Immutable as Arguments
Chapter 171: configparser
	Section 171.1: Creating configuration file programmatically
	Section 171.2: Basic usage
Chapter 172: Optical Character Recognition
	Section 172.1: PyTesseract
	Section 172.2: PyOCR
Chapter 173: Virtual environments
	Section 173.1: Creating and using a virtual environment
	Section 173.2: Specifying specific python version to use in script on Unix/Linux
	Section 173.3: Creating a virtual environment for a dierent version of python
	Section 173.4: Making virtual environments using Anaconda
	Section 173.5: Managing multiple virtual environments with virtualenvwrapper
	Section 173.6: Installing packages in a virtual environment
	Section 173.7: Discovering which virtual environment you are using
	Section 173.8: Checking if running inside a virtual environment
	Section 173.9: Using virtualenv with fish shell
Chapter 174: Python Virtual Environment - virtualenv
	Section 174.1: Installation
	Section 174.2: Usage
	Section 174.3: Install a package in your Virtualenv
	Section 174.4: Other useful virtualenv commands
Chapter 175: Virtual environment with virtualenvwrapper
	Section 175.1: Create virtual environment with virtualenvwrapper
Chapter 176: Create virtual environment with virtualenvwrapper in windows
	Section 176.1: Virtual environment with virtualenvwrapper for windows
Chapter 177: sys
	Section 177.1: Command line arguments
	Section 177.2: Script name
	Section 177.3: Standard error stream
	Section 177.4: Ending the process prematurely and returning an exit code
Chapter 178: ChemPy - python package
	Section 178.1: Parsing formulae
	Section 178.2: Balancing stoichiometry of a chemical reaction
	Section 178.3: Balancing reactions
	Section 178.4: Chemical equilibria
	Section 178.5: Ionic strength
	Section 178.6: Chemical kinetics (system of ordinary dierential equations)
Chapter 179: pygame
	Section 179.1: Pygame's mixer module
	Section 179.2: Installing pygame
Chapter 180: Pyglet
	Section 180.1: Installation of Pyglet
	Section 180.2: Hello World in Pyglet
	Section 180.3: Playing Sound in Pyglet
	Section 180.4: Using Pyglet for OpenGL
	Section 180.5: Drawing Points Using Pyglet and OpenGL
Chapter 181: Audio
	Section 181.1: Working with WAV files
	Section 181.2: Convert any soundfile with python and mpeg
	Section 181.3: Playing Windows' beeps
	Section 181.4: Audio With Pyglet
Chapter 182: pyaudio
	Section 182.1: Callback Mode Audio I/O
	Section 182.2: Blocking Mode Audio I/O
Chapter 183: shelve
	Section 183.1: Creating a new Shelf
	Section 183.2: Sample code for shelve
	Section 183.3: To summarize the interface (key is a string, data is an arbitrary object):
	Section 183.4: Write-back
Chapter 184: IoT Programming with Python and Raspberry PI
	Section 184.1: Example - Temperature sensor
Chapter 185: kivy - Cross-platform Python Framework for NUI Development
	Section 185.1: First App
Chapter 186: Pandas Transform: Preform operations on groups and concatenate the results
	Section 186.1: Simple transform
	Section 186.2: Multiple results per group
Chapter 187: Similarities in syntax, Dierences in meaning: Python vs. JavaScript
	Section 187.1: `in` with lists
Chapter 188: Call Python from C#
	Section 188.1: Python script to be called by C# application
	Section 188.2: C# code calling Python script
Chapter 189: ctypes
	Section 189.1: ctypes arrays
	Section 189.2: Wrapping functions for ctypes
	Section 189.3: Basic usage
	Section 189.4: Common pitfalls
	Section 189.5: Basic ctypes object
	Section 189.6: Complex usage
Chapter 190: Writing extensions
	Section 190.1: Hello World with C Extension
	Section 190.2: C Extension Using c++ and Boost
	Section 190.3: Passing an open file to C Extensions
Chapter 191: Python Lex-Yacc
	Section 191.1: Getting Started with PLY
	Section 191.2: The "Hello, World!" of PLY - A Simple Calculator
	Section 191.3: Part 1: Tokenizing Input with Lex
	Section 191.4: Part 2: Parsing Tokenized Input with Yacc
Chapter 192: Unit Testing
	Section 192.1: Test Setup and Teardown within a unittest.TestCase
	Section 192.2: Asserting on Exceptions
	Section 192.3: Testing Exceptions
	Section 192.4: Choosing Assertions Within Unittests
	Section 192.5: Unit tests with pytest
	Section 192.6: Mocking functions with unittest.mock.create_autospec
Chapter 193: py.test
	Section 193.1: Setting up py.test
	Section 193.2: Intro to Test Fixtures
	Section 193.3: Failing Tests
Chapter 194: Profiling
	Section 194.1: %%timeit and %timeit in IPython
	Section 194.2: Using cProfile (Preferred Profiler)
	Section 194.3: timeit() function
	Section 194.4: timeit command line
	Section 194.5: line_profiler in command line
Chapter 195: Python speed of program
	Section 195.1: Deque operations
	Section 195.2: Algorithmic Notations
	Section 195.3: Notation
	Section 195.4: List operations
	Section 195.5: Set operations
Chapter 196: Performance optimization
	Section 196.1: Code profiling
Chapter 197: Security and Cryptography
	Section 197.1: Secure Password Hashing
	Section 197.2: Calculating a Message Digest
	Section 197.3: Available Hashing Algorithms
	Section 197.4: File Hashing
	Section 197.5: Generating RSA signatures using pycrypto
	Section 197.6: Asymmetric RSA encryption using pycrypto
	Section 197.7: Symmetric encryption using pycrypto
Chapter 198: Secure Shell Connection in Python
	Section 198.1: ssh connection
Chapter 199: Python Anti-Patterns
	Section 199.1: Overzealous except clause
	Section 199.2: Looking before you leap with processor-intensive function
Chapter 200: Common Pitfalls
	Section 200.1: List multiplication and common references
	Section 200.2: Mutable default argument
	Section 200.3: Changing the sequence you are iterating over
	Section 200.4: Integer and String identity
	Section 200.5: Dictionaries are unordered
	Section 200.6: Variable leaking in list comprehensions and for loops
	Section 200.7: Chaining of or operator
	Section 200.8: sys.argv[0] is the name of the file being executed
	Section 200.9: Accessing int literals' attributes
	Section 200.10: Global Interpreter Lock (GIL) and blocking threads
	Section 200.11: Multiple return
	Section 200.12: Pythonic JSON keys
Chapter 201: Hidden Features
	Section 201.1: Operator Overloading
Credits
You may also like




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