Learning Python

ISBN-10: 0596002815

ISBN-13: 9780596002817

Edition: 2nd 2004

Authors: David Ascher, Mark Lutz

List price: $39.99
eBook available
30 day, 100% satisfaction guarantee

If an item you ordered from TextbookRush does not meet your expectations due to an error on our part, simply fill out a return request and then return it by mail within 30 days of ordering it for a full refund of item cost.

Learn more about our returns policy


Portable, powerful, and a breeze to use, Python is the popular open source object-oriented programming language used for both standalone programs and scripting applications. Python is considered easy to learn, but there's no quicker way to mastery of the language than learning from an expert teacher. The new edition of "Learning Python puts you in the hands of two expert teachers, Mark Lutz and David Ascher, whose friendly, well-structured prose has guided many a programmer to proficiency with the language. "Learning Python, Second Edition offers programmers a comprehensive learning tool for Python and object-oriented programming. Thoroughly updated for the numerous language and class presentation changes that have taken place since the release of the first edition in 1999, this guide introduces the basic elements of the latest release of Python 2.3 and covers new features, such as list comprehensions, nested scopes, and iterators/generators. Beyond language features, this edition of "Learning Python also includes new context for less-experienced programmers, including fresh overviews of object-oriented programming and dynamic typing, new discussions of program launch and configuration options, new coverage of documentation sources, and more. There are also new use cases throughout to make the application of language features more concrete. The first part of "Learning Python gives programmers all the information they'll need to understand and construct programs in the Python language, including types, operators, statements, classes, functions, modules and exceptions. The authors then present more advanced material, showing how Python performs common tasks by offering realapplications and the libraries available for those applications. Each chapter ends with a series of exercises that will test your Python skills and measure your understanding. "Learning Python, Second Edition is a self-paced book that allows readers to focus on the core Python language in depth. As you work through the book, you'll gain a deep and complete understanding of the Python language that will help you to understand the larger application-level examples that you'll encounter on your own. If you're interested in learning Python--and want to do so quickly and efficiently--then "Learning Python, Second Edition is your best choice.
eBooks Starting from $27.99
Rent eBooks
Buy eBooks
what's this?
Rush Rewards U
Members Receive:
You have reached 400 XP and carrot coins. That is the daily max!
Study Briefs

Limited time offer: Get the first one free! (?)

All the information you need in one place! Each Study Brief is a summary of one specific subject; facts, figures, and explanations to help you learn faster.

Add to cart
Study Briefs
SQL Online content $4.95 $1.99
Add to cart
Study Briefs
MS Excel® 2010 Online content $4.95 $1.99
Add to cart
Study Briefs
MS Word® 2010 Online content $4.95 $1.99
Add to cart
Study Briefs
MS PowerPoint® 2010 Online content $4.95 $1.99
Customers also bought

Book details

List price: $39.99
Edition: 2nd
Copyright year: 2004
Publisher: O'Reilly Media, Incorporated
Publication date: 1/2/2004
Binding: Paperback
Pages: 624
Size: 7.00" wide x 8.75" long x 1.25" tall
Weight: 1.892
Language: English

David Ascher is the lead for Python projects at ActiveState, including Komodo, ActiveState's integrated development environment written mostly in Python. David has taught courses about Python to corporations, in universities, and at conferences. He also organized the Python track at the 1999 and 2000 O'Reilly Open Source Conventions, and was the program chair for the 10th International Python Conference. In addition, he co-wrote Learning Python (both editions) and serves as a director of the Python Software Foundation. David holds a B.S. in physics and a Ph.D. in cognitive science, both from Brown University.

Christopher Phillips is an educator, a freelance writer, and the founder of the non-profit Society for Philosophical Inquiry.Mark Lutz is a leading Python trainer, the author of Python's earliest and best-selling texts, and a pioneering figure in the Python world. Mark is the author of the three O'Reilly books: Learning Python, Programming Python, and Python Pocket Reference, all currently in fourth or fifth editions. He has been using and promoting Python since 1992, started writing Python books in 1995, and began teaching Python classes in 1997. As of Spring 2013, Mark has instructed 260 Python training sessions, taught roughly 4,000 students in live classes, and written Python books that have sold 400,000 units and been translated to at least a dozen languages. Together, his two decades of Python efforts have helped to establish it as one of the most widely used programming languages in the world today. In addition, Mark has been in the software field for 30 years. He holds BS and MS degrees in computer science from the University of Wisconsin where he explored implementations of the Prolog language, and over his career has worked as a professional software developer on compilers, programming tools, scripting applications, and assorted client/server systems. Mark maintains a training website ( http://learning-python.com ) and an additional book support site on the Web ( http://www.rmi.net/~lutz ).

Getting Started
A Python Q&A Session
Why Do People Use Python?
Is Python a Scripting Language?
Okay, But What's the Downside?
Who Uses Python Today?
What Can I Do with Python?
What Are Python's Technical Strengths?
How Does Python Stack Up to Language X?
How Python Runs Programs
Introducing the Python Interpreter
Program Execution
Execution Model Variations
How You Run Programs
Interactive Coding
System Command Lines and Files
Clicking Windows File Icons
Module Imports and Reloads
The IDLE User Interface
Other IDEs
Embedding Calls
Frozen Binary Executables
Text Editor Launch Options
Other Launch Options
Future Possibilities?
Which Option Should I Use?
Part I Exercises
Types and Operations
Python Program Structure
Why Use Built-in Types?
Python Expression Operators
Numbers in Action
The Dynamic Typing Interlude
String Literals
Strings in Action
String Formatting
String Methods
General Type Categories
Lists and Dictionaries
Lists in Action
Dictionaries in Action
Tuples, Files, and Everything Else
Type Categories Revisited
Object Generality
References Versus Copies
Comparisons, Equality, and Truth
Python's Type Hierarchies
Other Types in Python
Built-in Type Gotchas
Part II Exercises
Statements and Syntax
Assignment, Expressions, and Print
Assignment Statements
Expression Statements
Print Statements
if Tests
if Statements
Python Syntax Rules
Truth Tests
while and for Loops
while Loops
break, continue, pass, and the Loop else
for Loops
Loop Variations
Documenting Python Code
The Python Documentation Interlude
Common Coding Gotchas
Part III Exercises
Function Basics
Why Use Functions?
Coding Functions
A First Example: Definitions and Calls
A Second Example: Intersecting Sequences
Scopes and Arguments
Scope Rules
The global Statement
Scopes and Nested Functions
Passing Arguments
Special Argument Matching Modes
Advanced Function Topics
Anonymous Functions: lambda
Applying Functions to Arguments
Mapping Functions Over Sequences
Functional Programming Tools
List Comprehensions
Generators and Iterators
Function Design Concepts
Function Gotchas
Part IV Exercises
Modules: The Big Picture
Why Use Modules?
Python Program Architecture
How Imports Work
Module Coding Basics
Module Creation
Module Usage
Module Namespaces
Reloading Modules
Module Packages
Package Import Basics
Package Import Example
Why Use Package Imports?
A Tale of Three Systems
Advanced Module Topics
Data Hiding in Modules
Enabling Future Language Features
Mixed Usage Modes: __name__ and __main__
Changing the Module Search Path
The import as Extension
Module Design Concepts
Module Gotchas
Part V Exercises
Classes and OOP
OOP: The Big Picture
Why Use Classes?
OOP from 30,000 Feet
Class Coding Basics
Classes Generate Multiple Instance Objects
Classes Are Customized by Inheritance
Classes Can Intercept Python Operators
Class Coding Details
The Class Statement
Operator Overloading
Namespaces: The Whole Story
Designing with Classes
Python and OOP
Classes as Records
OOP and Inheritance: "is-a" Relationships
OOP and Composition: "has-a" Relationships
OOP and Delegation
Multiple Inheritance
Classes Are Objects: Generic Object Factories
Methods Are Objects: Bound or Unbound
Documentation Strings Revisited
Classes Versus Modules
Advanced Class Topics
Extending Built-in Types
Pseudo-Private Class Attributes
"New Style" Classes in Python 2.2
Class Gotchas
Part VI Exercises
Exceptions and Tools
Exception Basics
Why Use Exceptions?
Exception Handling: The Short Story
The try/except/else Statement
The try/finally Statement
The raise Statement
The assert Statement
Exception Objects
String-Based Exceptions
Class-Based Exceptions
General raise Statement Forms
Designing with Exceptions
Nesting Exception Handlers
Exception Idioms
Exception Design Tips
Exception Gotchas
Core Language Summary
Part VII Exercises
The Outer Layers
Common Tasks in Python
Conversions, Numbers, and Comparisons
Manipulating Strings
Data Structure Manipulations
Manipulating Files and Directories
Internet-Related Modules
Executing Programs
Debugging, Testing, Timing, Profiling
An Automated Complaint System
Interfacing with COM: Cheap Public Relations
A Tkinter-Based GUI Editor for Managing Form Data
Jython: The Felicitous Union of Python and Java
Python Resources
Layers of Community
The Process
Services and Products
The Legal Framework: The Python Software Foundation
Popular Third-Party Software
Web Application Frameworks
Tools for Python Developers
Installation and Configuration
Solutions to Exercises
Free shipping on orders over $35*

*A minimum purchase of $35 is required. Shipping is provided via FedEx SmartPost® and FedEx Express Saver®. Average delivery time is 1 – 5 business days, but is not guaranteed in that timeframe. Also allow 1 - 2 days for processing. Free shipping is eligible only in the continental United States and excludes Hawaii, Alaska and Puerto Rico. FedEx service marks used by permission."Marketplace" orders are not eligible for free or discounted shipping.

Learn more about the TextbookRush Marketplace.