A Python Book: Beginning Python, Advanced Python, and ...
A Python Book
A Python Book: Beginning Python, Advanced
Python, and Python Exercises
Author:
Dave Kuhlman
Contact:
dkuhlman@
Address:
Page 1
A Python Book
Revision
1.3a
Date
December 15, 2013
Copyright
Copyright (c) 2009 Dave Kuhlman. All Rights Reserved. This document is subject
to the provisions of the Open Source MIT License
.
Abstract
This document is a self?learning document for a course in Python programming.
This course contains (1) a part for beginners, (2) a discussion of several advanced
topics that are of interest to Python programmers, and (3) a Python workbook with
lots of exercises.
Page 2
A Python Book
Contents
1 Part 1 ?? Beginning Python...........................................................................................10
1.1 Introductions Etc...................................................................................................10
1.1.1 Resources.......................................................................................................11
1.1.2 A general description of Python....................................................................12
1.1.3 Interactive Python..........................................................................................15
1.2 Lexical matters......................................................................................................15
1.2.1 Lines..............................................................................................................15
1.2.2 Comments......................................................................................................16
1.2.3 Names and tokens..........................................................................................16
1.2.4 Blocks and indentation..................................................................................16
1.2.5 Doc strings.....................................................................................................17
1.2.6 Program structure..........................................................................................17
1.2.7 Operators.......................................................................................................18
1.2.8 Also see.........................................................................................................19
1.2.9 Code evaluation.............................................................................................19
1.3 Statements and inspection ?? preliminaries...........................................................20
1.4 Built?in data?types.................................................................................................21
1.4.1 Numeric types................................................................................................21
1.4.2 Tuples and lists..............................................................................................21
1.4.3 Strings............................................................................................................24
1.4.3.1 The new string.format method...............................................................26
1.4.3.2 Unicode strings......................................................................................27
1.4.4 Dictionaries....................................................................................................29
1.4.5 Files...............................................................................................................32
1.4.6 Other built?in types........................................................................................35
1.4.6.1 The None value/type..............................................................................35
1.4.6.2 Boolean values.......................................................................................36
1.4.6.3 Sets and frozensets.................................................................................36
1.5 Functions and Classes ?? A Preview......................................................................36
1.6 Statements.............................................................................................................37
1.6.1 Assignment statement....................................................................................37
1.6.2 import statement............................................................................................39
1.6.3 print statement...............................................................................................41
1.6.4 if: elif: else: statement...................................................................................43
1.6.5 for: statement.................................................................................................44
1.6.6 while: statement.............................................................................................48
Page 3
A Python Book
1.6.7 continue and break statements.......................................................................48
1.6.8 try: except: statement.....................................................................................49
1.6.9 raise statement...............................................................................................51
1.6.10 with: statement.............................................................................................52
1.6.10.1 Writing a context manager...................................................................52
1.6.10.2 Using the with: statement....................................................................53
1.6.11 del................................................................................................................54
1.6.12 case statement..............................................................................................55
1.7 Functions, Modules, Packages, and Debugging....................................................55
1.7.1 Functions.......................................................................................................55
1.7.1.1 The def statement...................................................................................55
1.7.1.2 Returning values....................................................................................55
1.7.1.3 Parameters..............................................................................................56
1.7.1.4 Arguments..............................................................................................56
1.7.1.5 Local variables.......................................................................................57
1.7.1.6 Other things to know about functions....................................................57
1.7.1.7 Global variables and the global statement.............................................58
1.7.1.8 Doc strings for functions.......................................................................60
1.7.1.9 Decorators for functions........................................................................60
1.7.2 lambda...........................................................................................................61
1.7.3 Iterators and generators.................................................................................62
1.7.4 Modules.........................................................................................................67
1.7.4.1 Doc strings for modules.........................................................................68
1.7.5 Packages........................................................................................................68
1.8 Classes...................................................................................................................69
1.8.1 A simple class................................................................................................69
1.8.2 Defining methods..........................................................................................70
1.8.3 The constructor..............................................................................................70
1.8.4 Member variables..........................................................................................70
1.8.5 Calling methods.............................................................................................71
1.8.6 Adding inheritance........................................................................................71
1.8.7 Class variables...............................................................................................72
1.8.8 Class methods and static methods.................................................................72
1.8.9 Properties.......................................................................................................74
1.8.10 Interfaces.....................................................................................................75
1.8.11 New?style classes.........................................................................................75
1.8.12 Doc strings for classes.................................................................................77
1.8.13 Private members..........................................................................................77
1.9 Special Tasks.........................................................................................................77
1.9.1 Debugging tools.............................................................................................77
Page 4
A Python Book
1.9.2 File input and output......................................................................................78
1.9.3 Unit tests........................................................................................................80
1.9.3.1 A simple example..................................................................................80
1.9.3.2 Unit test suites........................................................................................81
1.9.3.3 Additional unittest features....................................................................83
1.9.3.4 Guidance on Unit Testing......................................................................85
1.9.4 doctest............................................................................................................85
1.9.5 The Python database API..............................................................................87
1.9.6 Installing Python packages............................................................................88
1.10 More Python Features and Exercises..................................................................89
2 Part 2 ?? Advanced Python............................................................................................90
2.1 Introduction ?? Python 201 ?? (Slightly) Advanced Python Topics.......................90
2.2 Regular Expressions..............................................................................................90
2.2.1 Defining regular expressions.........................................................................90
2.2.2 Compiling regular expressions......................................................................91
2.2.3 Using regular expressions..............................................................................91
2.2.4 Using match objects to extract a value..........................................................92
2.2.5 Extracting multiple items..............................................................................93
2.2.6 Replacing multiple items...............................................................................94
2.3 Iterator Objects......................................................................................................96
2.3.1 Example ? A generator function....................................................................98
2.3.2 Example ? A class containing a generator method......................................100
2.3.3 Example ? An iterator class.........................................................................102
2.3.4 Example ? An iterator class that uses yield.................................................104
2.3.5 Example ? A list comprehension.................................................................105
2.3.6 Example ? A generator expression..............................................................105
2.4 Unit Tests............................................................................................................106
2.4.1 Defining unit tests........................................................................................106
2.4.1.1 Create a test class.................................................................................106
2.5 Extending and embedding Python......................................................................109
2.5.1 Introduction and concepts............................................................................109
2.5.2 Extension modules.......................................................................................110
2.5.3 SWIG...........................................................................................................112
2.5.4 Pyrex............................................................................................................115
2.5.5 SWIG vs. Pyrex...........................................................................................120
2.5.6 Cython.........................................................................................................120
2.5.7 Extension types............................................................................................122
2.5.8 Extension classes.........................................................................................122
2.6 Parsing.................................................................................................................122
2.6.1 Special purpose parsers...............................................................................123
Page 5
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related searches
- advanced find and replace word
- best python book pdf
- free python book pdf
- python book for beginners download
- advanced pavement and property
- advanced rubber and plastics toledo
- advanced nursing and home support
- advanced cost and management accounting pdf
- advanced cost and management accounting
- advanced delivery and logistics
- advanced sciences and technology
- advanced technology and research corporation