Python Essential Reference

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Author(s): David M. Beazley
Publisher:

Language: English
Pages: 742

Table of Contents......Page 8
Introduction......Page 26
I: The Python Language......Page 28
Running Python......Page 30
Variables and Arithmetic Expressions......Page 32
Conditionals......Page 34
File Input and Output......Page 35
Strings......Page 36
Lists......Page 37
Tuples......Page 39
Sets......Page 40
Dictionaries......Page 41
Iteration and Looping......Page 42
Functions......Page 43
Generators......Page 44
Coroutines......Page 45
Objects and Classes......Page 46
Exceptions......Page 47
Modules......Page 48
Getting Help......Page 49
Line Structure and Indentation......Page 50
Numeric Literals......Page 51
String Literals......Page 52
Containers......Page 54
Decorators......Page 55
Source Code Encoding......Page 56
Object Identity and Type......Page 58
Reference Counting and Garbage Collection......Page 59
References and Copies......Page 60
First-Class Objects......Page 61
Built-in Types for Representing Data......Page 62
Built-in Types for Representing Program Structure......Page 72
Built-in Types for Interpreter Internals......Page 76
Object Behavior and Special Methods......Page 79
Operations on Numbers......Page 90
Operations on Sequences......Page 92
String Formatting......Page 95
Advanced String Formatting......Page 97
Operations on Dictionaries......Page 99
Augmented Assignment......Page 100
Conversion Functions......Page 101
Boolean Expressions and Truth Values......Page 102
Order of Evaluation......Page 103
Conditional Expressions......Page 104
Conditional Execution......Page 106
Loops and Iteration......Page 107
Exceptions......Page 109
Context Managers and the with Statement......Page 114
Assertions and __debug__......Page 116
Functions......Page 118
Parameter Passing and Return Values......Page 120
Scoping Rules......Page 121
Functions as Objects and Closures......Page 123
Decorators......Page 126
Generators and yield......Page 127
Coroutines and yield Expressions......Page 129
Using Generators and Coroutines......Page 131
List Comprehensions......Page 133
Generator Expressions......Page 134
Declarative Programming......Page 135
Recursion......Page 137
Documentation Strings......Page 138
Function Attributes......Page 139
eval(), exec(), and compile()......Page 140
The class Statement......Page 142
Scoping Rules......Page 143
Inheritance......Page 144
Polymorphism Dynamic Binding and Duck Typing......Page 147
Static Methods and Class Methods......Page 148
Properties......Page 149
Descriptors......Page 151
Data Encapsulation and Private Attributes......Page 152
Object Memory Management......Page 153
Object Representation and Attribute Binding......Page 156
__slots__......Page 157
Operator Overloading......Page 158
Types and Class Membership Tests......Page 159
Abstract Base Classes......Page 161
Metaclasses......Page 163
Class Decorators......Page 166
Modules and the import Statement......Page 168
Importing Selected Symbols from a Module......Page 170
Execution as the Main Program......Page 171
Module Loading and Compilation......Page 172
Packages......Page 174
Distributing Python Programs and Libraries......Page 177
Installing Third-Party Libraries......Page 179
Reading Command-Line Options......Page 182
Files and File Objects......Page 183
Standard Input, Output, and Error......Page 186
The print Statement......Page 187
Variable Interpolation in Text Output......Page 188
Generating Output......Page 189
Unicode String Handling......Page 190
Unicode I/O......Page 192
Object Persistence and the pickle Module......Page 196
Interpreter Options and Environment......Page 198
Interactive Sessions......Page 200
Launching Python Applications......Page 201
Per-user Site Packages......Page 202
Enabling Future Features......Page 203
Program Termination......Page 204
Documentation Strings and the doctest Module......Page 206
Unit Testing and the unittest Module......Page 208
The Python Debugger and the pdb Module......Page 211
Program Profiling......Page 215
Tuning and Optimization......Page 216
II: The Python Library......Page 224
Built-in Functions and Types......Page 226
Built-In Exceptions......Page 237
Built-In Warnings......Page 241
future_builtins......Page 242
copy......Page 244
gc......Page 245
inspect......Page 247
pickle......Page 251
sys......Page 254
traceback......Page 260
types......Page 262
warnings......Page 263
weakref......Page 265
decimal......Page 268
fractions......Page 275
math......Page 276
numbers......Page 277
random......Page 279
abc......Page 282
array......Page 284
bisect......Page 286
collections......Page 287
contextlib......Page 292
functools......Page 293
heapq......Page 294
itertools......Page 295
operator......Page 298
codecs......Page 302
re......Page 306
string......Page 312
struct......Page 315
unicodedata......Page 318
Relational Database API Specification......Page 322
sqlite3 Module......Page 328
DBM-Style Database Modules......Page 335
shelve Module......Page 336
bz2......Page 338
filecmp......Page 339
fnmatch......Page 341
gzip......Page 342
shutil......Page 343
tarfile......Page 344
tempfile......Page 348
zipfile......Page 349
zlib......Page 353
commands......Page 356
configParser, Configparser......Page 357
datetime......Page 361
errno......Page 368
fcntl......Page 372
io......Page 374
logging......Page 380
mmap......Page 394
msvcrt......Page 397
optparse......Page 399
os......Page 403
os.path......Page 421
signal......Page 424
subprocess......Page 427
time......Page 430
winreg......Page 433
Basic Concepts......Page 438
Concurrent Programming and Python......Page 439
multiprocessing......Page 440
threading......Page 461
queue, Queue......Page 469
Coroutines and Microthreading......Page 471
Network Programming Basics......Page 474
asynchat......Page 477
asyncore......Page 480
select......Page 484
socket......Page 494
ssl......Page 511
SocketServer......Page 514
ftplib......Page 522
http Package......Page 525
smtplib......Page 538
urllib Package......Page 539
xmlrpc Package......Page 549
23 Web Programming......Page 556
cgi......Page 558
cgitb......Page 564
wsgiref......Page 565
webbrowser......Page 569
base64......Page 570
binascii......Page 572
csv......Page 573
email Package......Page 577
hmac......Page 584
HTMLParser......Page 586
json......Page 588
mimetypes......Page 591
quopri......Page 592
xml Package......Page 593
Python Services......Page 610
Operating System Modules......Page 611
Internationalization......Page 612
Miscellaneous......Page 613
III: Extending and Embedding......Page 614
Extension Modules......Page 616
Embedding the Python Interpreter......Page 633
ctypes......Page 637
Advanced Extending and Embedding......Page 644
Jython and IronPython......Page 645
Who Should Be Using Python 3?......Page 646
Set Literals......Page 647
Extended Iterable Unpacking......Page 648
Function Annotations......Page 649
Keyword-Only Arguments......Page 650
Chained Exceptions......Page 651
Advanced Metaclasses......Page 652
Text Versus Bytes......Page 654
print() and exec() Functions......Page 656
Use of Iterators and Views......Page 657
File Names, Arguments, and Environment Variables......Page 658
Porting Code to Python 2.6......Page 659
Using the 2to3 Tool......Page 660
A Practical Porting Strategy......Page 662
Participate......Page 663
Index......Page 664
A......Page 665
B......Page 668
C......Page 670
D......Page 677
E......Page 682
F......Page 686
G......Page 690
H......Page 695
I......Page 697
J......Page 701
L......Page 702
M......Page 705
N......Page 709
O......Page 711
P......Page 713
Q......Page 718
R......Page 719
S......Page 723
T......Page 732
U......Page 736
W......Page 739
X......Page 741
Z......Page 742