学习Python 第3版(影印版)
分類: 图书,计算机/网络,程序设计,其他,
作者: (美)卢茨(Lutz,M)著
出 版 社:
出版时间: 2008-8-1字数: 785000版次: 1页数: 700印刷时间: 2008/08/01开本: 16开印次: 1纸张: 胶版纸I S B N : 9787564112400包装: 平装编辑推荐
卢茨(Lutz,M),作为Python培训界的领军人物,Mark Lutz是有关Python方面的最早和最畅销书籍的作者,并且从1992年起就是Python社区的先驱之一。同时他还是O'Reilly的《Programming Python》和《Python Pocket Reference》两本书的作者。Mark从1997年开始教授Python课程,截至2007年已经指导了超过200次培训。此外Mark拥有计算机科学学士和硕士学位,以及25年的软件开发经验。
内容简介
Python是一种理想的独立程序和脚本程序语言,具有可移植、强大和易用的特点。无论您是初学程序设计还是初学Python,都能通过本书快速而高效地掌握Python核心语言的基础。通读本书,您可以获得足够多的知识,能够学习将Python用于您所选择的任何应用领域。
《学习Python(第三版)》基于作者Mark Lutz在过去10年间讲授培训课程所使用的资料。除了大量的注解插图和每章总结外,作者还为每章加入了独特的一节,通过实际练习和复习提问的方式,让您在学习过程中练习新的技能,测验对概念的理解程度。
本书内容包括:
类型和运算——深入Python内置对象类型:数值、列表、字典及其他。
语句和语法——用来创建和处理对象的Python代码以及Python通用语法模型。
函数——Python的基本结构化和代码重用工具。
模块——将语句、函数和其他工具组织为更大的组件。
类和面向对象编程——可选的Python面向对象程序设计工具,用于定制和重用结构化代码。
异常和工具——处理语句和模块异常,并介绍编写较大型程序所使用的开发工具。
有关即将发布的Python 3.0的一些讨论。
《学习Python 第三版》为您理解Python语言提供了完整而又深入的介绍,帮助您领会在以后的工作中会遇到的应用级Python实例。如果您准备好探索Google和YouTube究竟从Python中发现了什么,那么本书就是一个最好的开始。
目录
Preface
PartⅠ.Getting Started
1.A Python Q&A Session
Why Do People Use Python?
Software Quality
Developer Productivity
Is Python a“Scripting Language”?
OK,but What’S the Downside?
Who Uses Python Today?
What Can I Do with Python?
Systems Programming
GUIs
Internet Scripting
Component Integration
Database Programming
Rapid Prototyping
Numeric and Scientific Programming
Gaming,Images,AI,XML,Robots,and More
What Are Python’S Technical Strengths?
It’S Object Oriented
It’S Free
It’S Portable
It’S Powerful
It’S Mixable
It’S Easy to Use
It’S Easy to Learn
It’s Named After Monty Python
How Does Python Stack Up to Language X?
Chapter Summary
Brain Builder
Chapter Quiz
Quiz Answers
2.How Python Runs Programs
Introducing the Python Interpreter
Program Execution
The Programmer’S View
Python’S View
Byte code compilation
The Python Virtual Machine(PVM)
Performance implications
Development implications
Execution Model Variations
Python Implementation Alternatives
CPython
Jython
IronPython
Execution Optimization Tools
The Psyco just-in-time compiler
The Shedskin C++translator
Frozen Binaries
Future Possibilities?
Chapter Summary
Brain Builder
Chapter Quiz
Quiz Answers
3.How You Run Programs
Interactive Coding
Using the Interactive Prompt
System Command Lines and Files
Using Command Lines and Files
Unix Executable Scripts(#!)
Clicking File Icons
Clicking Icons on Windows
The raw_input Trick
0ther Icon-Click Limitations
Module Imports and Reloads
The Grander Module Story:Attributes
Modules and namespaces
import and reload Usage Notes
The IDLE User Interface
IDLE Basics
Using 1DLE
Advanced 1DLE Tools
0ther IDEs
Embedding Calls
Frozen Binary Executables
Text Editor Launch Options
0ther Launch Options
Future Possibilities?
Which 0ption Should I Use?
Chapter Summary
Brain Builder
Chapter Quiz
Ouiz Answers
Brain Builder:Part I Exercises
PartⅡ.Types and Operations
4.Introducing Python 0bject Types
Why Use Built—in Types?
Python’S Core Data Types
Numbers
Strings
Sequence Operations
Immutability
Type—Specific Methods
Getting Help
Other Ways to Code Strings
Pattern Matching
Lists
Sequence Operations
Type—Specific Operations
Bounds Checking
Nesting
List Comprehensions
Dictionaries
Mapping Operations
Nesting Revisited
Sorting Keys:for Loops
Iteration and Optimization
Missing Keys:if Tests
Tuples
Why Tuples?
Files
Other File-Like Tools
Other Core Types
How to Break Your Code’S Flexibility
User—Defined Classes
And Everything Else
Chapter Summary
Brain Builder
Chapter Quiz
Quiz Answers
5.Numbers
Python Numeric Types
Numeric Literals
Built—in Numeric Tools and Extensions
Python Expression Operators
Mixed Operators Follow Operator Precedence
Parentheses Group Subexpressions
Mixed Types Are Converted Up
Preview:Operator Overloading
Numbers in Action
Variables and Basic ExpressionS
Numeric Display Formats
Division:Classic,Floor,and True
Bitwise Operations
Long Integers
Complex Numbers
Hexadecimal and Octal Notation
Other Built.in Numeric Tools
Other Numeric Types
Decimal Numbers
Sets
Booleans
Third.Party Extensions
Chapter Summary
Brain Builder
Chapter Quiz
Quiz Answers
6.The DynamicTyping Interlude
The Case of the Missing Declaration Statements
Variables,Objects,and References
Types Live with Objects,Not Variables
Objects Are Garbage—Collected
Shared Refe:rences
Shared References and In—Place Changes
Shared References and Equality
Dynamic Typing Is Everywhere
Chapter Summary
Brain Builder
Chapter Quiz
Quiz Answers
7.Strings
String Literals
Single,and Double.Quoted Strings Are the Same
Escape Sequences Represent Special Bytes
Raw Strings Suppress Escapes
Triple Quotes Code Multiline Block Strings
Unicode Strings Encode Larger Character Sets
Strings in Action
Basic Operations
Indexing and Slicing
Extended slicing:the third limit
String Conversion Tools
Character code conversions
Changing Strings
String Formatting
Advanced String Formatting
Dictionary—Based String Formatting
String Methods
String Method Examples:Changing Strings
String Method Examples:Parsing Text
Other Common String Methods in Action
The Original string Module
General Type Categories
Types Share Operation Sets by Categories
Mutable Types Can Be Changed In—Place
Chapter Summary
Brain Builder
Chapter Quiz
quiz Answers
8.Lists and Dictionaries
Lists
Lists in Action
Basic List Operations
Indexing,Slicing,and Matrixes
Changing Lists In—Place
Index and slice assignments
List method calls
Other common list operations
Dictionaries
Dictionaries in Action
Basic Dictionary Operations
Changing Dictionaries In—Place
More Dictionary Methods
A Languages Table
Dictionary Usage Notes
Using dictionaries to simulate flexible lists
Using dictionaries for sparse data structures
Avoiding missing-key errors
Using dictionaries as“records”
Other ways to make dictionaries
Chapter Summary
Brain Builder
Chapter Quiz
Quiz Answers
9.Tuples,Files,and Everthing Else
Tuples
Tuples in Action
Tuple syntax peculiarities:commas and parentheses
Conversions and immutability
Why Lists and Tuples?
Files
Opening Files
Using Files
Files in Action
Storing and parsing Python objects in files
Storing native Python objects with pickle
Storing and parsing packed binary data in files
Other File Tools
Type Categories Revisited
Object Flexibility
References Versus Copies
Comparisons,Equality,and Truth
The Meaning of True and False in Python
Python’S Type Hierarchies
Other Types in Python
Built.in Type Gotchas
Assignment Creates References,Not Copies
Repetition Adds One Level Deep
Beware of Cyclic Data Structures
Immutable Types Can’t Be Changed In-Place
Chapter Summary
Brain Builder
Chapter Quiz
Quiz Answers
Brain Builder:Part II Exercises
PartⅢ Statements and Syntax
Introducing Python Statements
Python Program Structure Revisited
Python’S Statements
ATale ofTwo ifs
What Python Adds
What Python Removes
Parentheses are optional
End of line iS end of statement
End of indentation iS end of block
Why Indentation Syntax?
A Few Special Cases
Statement rule special cases
Block rule special case
A Quick Example:Interactive Loops
A Simple Interactive Loop
Doing Math on User Inputs
Handling Errors by Testing Inputs
Handling Errors with try Statements
Nesting Code Three Levels Deep
Chapter Summary
Brain Builder
Chapter Quiz
Quiz Answers
11.Assignment,Expressions,and print
Assignment Statements
Assignment Statement Forms
Sequence Assignments
Advanced sequence assignment patterns
Multiple—Target Assignments
Multiple—target assignment and shared references
Augmented Assignments
Augmented assignment and shared references
Variable Name Rules
Naming conventions
Names have no type,but objects do
Expression Statements
Expression Statements and In-Place Changes
print Statements
The Python“Hello World”Program
Redirecting the Output Stream
The printfile Extension
Chapter Summary
Brain Builder
Chapter Quiz
Quiz Answers
12.if Tesis
if Statements
General Format
Basic Examples
Multiway Branching
Python Syntax Rules
Block Delimiters
Statement Delimiters
A Few Special Cases
Truth Tests
The if/else Ternary Expression
Chapter Summary
Brain Builder
Chapter Quiz
Quiz Answers
13.while and for Loops
while Loops
General Format
Examples
break,continue,pass,and the Loop else
General Loop Format
Examples
pass
continue
break
else
More on the loop else clause
forLoops
General Format
Examples
Basic usage
Other data types
Tuple assignment in for
Nested for loops
Iterators:A First Look
File Iterators
Other Built—in Type Iterators
Other Iteration Contexts
User—Defined Iterators
Loop Coding Techniques
Counter Loops:while and range
Nonexhaustive Traversals:range
Changing Lists:range
Parallel Traversals:zip and map
Dictionary construction with zip
Generating Both 0ffsets and Items:enumerate
List Comprehensions:A First Look
List Comprehension Basics
Using List Comprehensions on Files
Extended List Comprehension Syntax
Chapter Summary
Brain Builder
Chapter Quiz
Quiz Answers
14.The Documentation Interlude
Python Documentation Sources
#Comments
The dir Function
Docstrings:--doc--
User-defined docstrings
Docstring standards
Built-in docstrings
PyDoc:The help Function
PyDoc:HTML Reports
Standard Manual Set
Web Resources
Published Books
Common Coding Gotchas
……
PartⅣ Function
15.Function Basics
16.Scopes and Arguments
17.Advanced Function Topics
PartⅤ.Modules
18.Modules:The Big Picture
19.Module Coding Basics
20.Module Packages
21.Advanced Module Topics
PartⅥ Classes and OOP
22.OOP:The Big Picture
23.Class Coding Basics
24.Class Coding Details
25.Designing with Classes
26.Advanced Class Topics
PartⅦ Exceptions and Tools
27.Exception Basics
28.Exception Objects
29.Designing with Exceptions
PartⅧ Appendixes
A.Installation and Configuration
B.Solutions to End-of-Part Exercises
Index