Differences between revisions 123 and 124
Revision 123 as of 2010-01-15 15:52:23
Size: 74
Editor: hosted
Comment: maertisani
Revision 124 as of 2010-01-15 15:54:30
Size: 26492
Editor: MichaelFoord
Comment: whole page deleted
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
1950 estimates year change societies cycles
----
CategoryDocumentation
The books on this page are all general introductions to the
Python language.
Most of these books will contain a few chapters on particular
applications such as GUI interfaces or Web programming, but won't go
into great detail on any one topic; refer to the PythonBooks page for lists of
application-specific books.
Experienced programmers who prefer a brief and condensed introduction
should look at the list of ReferenceBooks.
----
[[http://www.headfirstlabs.com/books/hfprog|Head First Programming]] by Paul Barry and David Griffiths

A Learner's Guide to Programming, using the Python Language

 * ISBN-10: 0596802374
 * ISBN-13: 978-0596802370
 * O'Reilly Media
 * 440 pages (November 2009)


Ever wished you could learn how to program from a book? If you have no previous programming experience, you might be wondering where to start. Head First Programming introduces the core concepts of writing computer programs--variables, decisions, loops, functions, and objects--which apply regardless of the programming language, but uses concrete examples and exercises in the dynamic and versatile Python language to apply and reinforce these concepts.

Learn the basic tools to start writing the programs that interests you, not the generic software someone else thinks you should have, and get a better understanding of what software can (and cannot) do. When you're finished, you'll have the necessary foundation to apply to whatever language or software project you need or want to learn.

----

[[http://www.qtrac.eu/py3book.html|Programming in Python 3: A Complete Introduction to the Python Language (Second Edition)]] by Mark Summerfield

 * ISBN10: 0321680561
 * Addison-Wesley Professional
 * 648 pages (November 2009)

This book teaches you how to write programs using Python 3 in good Python 3 style.

The book will be useful to people who program professionally as part of their job, whether as full-time software developers, or those from other disciplines, including scientists and engineers, who need to do some programming in support of their work. It will also prove ideal for those Python 2 programmers who need to migrate (or prepare to migrate) to Python 3. The book is also suitable for students—the only prerequisite is some basic knowledge of programming in any language, for example, Basic or Java, or of course Python itself.

The book teaches solid procedural style programming, then builds on that to teach
solid object-oriented programming, and then goes on to more advanced
topics such as descriptors and class decorators. But even newcomers to
Python 3 should be able to write useful (although small and basic)
programs after reading chapter 1, and then go on to create larger and
more sophisticated programs as they work through the chapters.

The book's [[http://www.qtrac.eu/py3book.html|web site]] lists the table of contents and has
links to extracts. It also has all the examples and exercise solutions available for download.
----
[[http://www.cambridge.org/us/catalogue/catalogue.asp?isbn=9780521725965|Python for Software Design: How to Think Like a Computer Scientist]] by Allen B. Downey, Olin College of Engineering, Massachusetts

 * ISBN-13: 9780521725965)
 * Cambridge University Press
 * 272 pages (March 2009)

Python for Software Design is a concise introduction to software design using the Python programming language. Intended for people with no programming experience, this book starts with the most basic concepts and gradually adds new material. Some of the ideas students find most challenging, like recursion and object-oriented programming, are divided into a sequence of smaller steps and introduced over the course of several chapters. The focus is on the programming process, with special emphasis on debugging. The book includes a wide range of exercises, from short examples to substantial projects, so that students have ample opportunity to practice each new concept. Exercise solutions and code examples are available from thinkpython.com, along with Swampy, a suite of Python programs that is used in some of the exercises.

----
[[http://www.manning.com/sande|Hello World! Computer Programming for Kids and Other Beginners]] by Warren Sande and Carter Sande

 * ISBN10: 1933988495
 * Manning Publications
 * 488 pages (January 2009)

"Computer programming is a powerful tool for children to 'learn learning,' that is, to learn the skills of thinking and problem-solving...Children who engage in programming transfer that kind of learning to other things."--Nicholas Negroponte, the man behind the One Laptop Per Child project that hopes to put a computer in the hands of every child on earth, January 2008

Your computer won't respond when you yell at it. Why not learn to talk to your computer in its own language? Whether you want to write games, start a business, or you're just curious, learning to program is a great place to start. Plus, programming is fun!

Hello World! provides a gentle but thorough introduction to the world of computer programming. It's written in language a 12-year-old can follow, but anyone who wants to learn how to program a computer can use it. Even adults. Written by Warren Sande and his son, Carter, and reviewed by professional educators, this book is kid-tested and parent-approved. You don't need to know anything about programming to use the book. But you should know the basics of using a computer--e-mail, surfing the web, listening to music, and so forth. If you can start a program and save a file, you should have no trouble using this book.

Color ebook and black and white print book are both available from the publisher at
[[http://www.manning.com/sande|www.manning.com/sande]].
----
[[http://www.ironpythoninaction.com/|IronPython in Action]] by Michael Foord

 * ISBN10: 1933988339
 * Manning Publications
 * 480 pages (March 2009)

IronPython is an implementation of Python for the Microsoft .NET framework, Mono, and the Silverlight and Moonlight browser plugins. IronPython in Action is an introduction to programming with IronPython for both .NET programmers interested in Python and Python programmers new to .NET.

IronPython in Action includes a swift paced Python tutorial, chapters introducing .NET libraries and structured application development with Python, integrating with other .NET languages like C# and VB.NET, server side web programming with ASP.NET and client side web programming with Silverlight, system administration, working with the WPF and Windows Forms user interface libraries and embedding the IronPython engine in .NET applications.

As well as covering specific topics and both Python and .NET libraries the book pays special attention to the nitty-gritty details of Python and .NET integration that previous experience with Python or C# won't necessarily have prepared you for.

Color ebook and black and white print book are both available from the publisher at
[[http://www.manning.com/foord|www.manning.com/foord]].
----
"Beginning Python: From Novice to Professional, Second Edition"
Magnus Lie Hetland

ISBN13: 978-1-59059-982-2
Apress Inc,
688 pages (September 2008)

Gain a fundamental understanding of Python’s syntax and features with the second edition of Beginning Python, an up–to–date introduction and practical reference. Covering a wide array of Python–related programming topics, including addressing language internals, database integration, network programming, and web services, you’ll be guided by sound development principles. Ten accompanying projects will ensure you can get your hands dirty in no time.

Updated to reflect the latest in Python programming paradigms and several of the most crucial features found in the forthcoming Python 3.0 (otherwise known as Python 3000), advanced topics, such as extending Python and packaging/distributing Python applications, are also covered.

[[http://www.apress.com/book/view/9781590599822/|Home Page]] (includes electronic version)
----
'''Object-Oriented Programming in Python'''
 Michael H. Goldwasser, David Letscher

This is a textbook for an object-oriented introduction to computer science course (CS1) using Python.

[[http://prenhall.com/goldwasser|Home Page]]

ISBN:0136150314,
Prentice Hall Publishing,
688 pages (October 2007)
----
'''An Introduction to Python''' (version 2.5)
 Guido van Rossum, and Fred L. Drake, Jr. (Editor)

ISBN:0954161769,
Network Theory Ltd,
164 pages (November 2006)

This is a printed edition of the official Python tutorial by Guido van Rossum. For each copy sold $1 will be donated to the Python Software Foundation.

[[http://www.network-theory.co.uk/python/manual/|Home Page]] (includes electronic version)
----
'''Python for Dummies''' (version 2.5)
 Stef Maruch and Aahz Maruch

ISBN:0471778648,
For Dummies,
410 pages (August 2006)

[[http://www.pythonfood.com/|Home Page]]

Following the usual Dummies style, this book takes a light-hearted
approach to introducing Python. In addition to Python itself, ''Python
for Dummies'' also gives lots of advice about good programming
practices.
----
'''Introduction to Computing and Programming Using Python: A Multimedia Approach'''
Mark Guzdial

ISBN: 0131176552
[[http://coweb.cc.gatech.edu/mediaComp-teach]]

An introduction to programming by manipulating digital media --- creating negatives and grayscale pictures, splicing sounds, implementing chromakey.
----

'''Core Python Programming'''
 Wesley J. Chun

ISBN: 0132269937 (2nd ed.); 0130260363 (1st ed.)

Prentice Hall PTR / Pearson Education

~1120 pages (Sep 2006); 810 pages (Jan 2001)

The main goal of this book is comprehensively teaching you the core of the Python language, much more than just its syntax (which you don't really need a book to learn, right?). Knowing more about how Python works under the covers, including the relationship between data objects and memory management, will make you a much more '''effective''' Python programmer coming out of the gate. The advanced topics chapters are meant as complete intros or "quick dives" into each of those distinct subjects. However, if moving towards those specific areas of development, they are more than enough to get you pointed in the right direction. We would say that the book is 40% introductory, 40% intermediate (in-depth core Python material plus advanced topics chapters), and 20% reference -- it is *not* meant to be a substitute for a pure reference such as the ''Python Essential Reference'' or ''Python in a Nutshell''.

The new 2nd edition is expanded (300 new pages!) and updated through Python 2.5 as well as confirmed functionality for future versions! Also added are a few new chapters of advanced material. As in the 1st edition, a plethora of easy to advanced exercises can be found at the end of every chapter to hammer the concepts home. At the moment, this is the most complete and up-to-date Python book on the market today.

From an anonymous reviewer: "Very well written. It is the clearest,
friendliest book I have come across yet for explaining Python, and putting it in a wider context. It does not presume a large amount of
other experience. It may be too slow for more advanced people, but it
does go into some important Python topics carefully and in
depth. Unlike too many beginner books, it never condescends or
tortures the reader with childish hide-and-seek prose games. Not too
many in-depth real-world examples in the book (hopefully he will do a
followup volume), it sticks to gaining a solid grasp of Python syntax
and structure."

[[http://corepython.com|Home Page]] (includes book reviews, errata, sample chapter, links to alternate editions, source code from the book, and more!)

Links regarding the 1st edition:
[[http://www-106.ibm.com/developerworks/linux/library/l-pbook3.html|IBM Developer Works review]]
[[http://www2.linuxjournal.com/lj-issues/issue85/4564.html|Linux Journal review]]
[[http://www.china-pub.com/computers/common/info.asp?id=3097|Chinese edition]]
[[http://safari1.oreilly.com/main.asp?bookname=0130260363|O'Reilly Safari electronic edition]]
[[http://www.prakashbooks.com/details.php3?id=5806|Indian edition (English)]]
[[http://www.wowbook.com/computer/book/info/book_detail.asp?isbn=ISBN89-450-7052-4|Korean edition]]
[[http://www.accu.org/bookreviews/public/reviews/c/c002320.htm|Association of C/C++ Users review]]
[[http://www.awaretek.com/CorePython.html|Python Learning Foundation review]]
[[http://uselesspython.com/gettingstarted.html|Mississippi Python users group (Useless Python) review]]

----

'''Python Programming: An Introduction to Computer Science'''
 John Zelle

ISBN:1887902996,
Franklin Beedle & Associates,
December 2003

This is a textbook for a "traditional" introduction to computer science course (CS1) using Python.

[[http://mcsp.wartburg.edu/zelle/python|Home Page]]
----
''' How to Think Like a Computer Scientist: Learning with Python'''
 Allen Downey, Jeff Elkner and Chris Meyers

ISBN:0971677506,
Green Tea Press
288 pages

How to Think... is a free textbook available under the GNU Free Documentation License. It is a true beginners book.
The ebook version is free and available in PDF, HTML and Post''''''Script.

[[http://thinkpython.com|Home Page]]
----
''' Dive Into Python: Python for Experienced Programmers'''
 Mark Pilgrim

ISBN:1590593561,
Apress
432 pages

Dive Into Python is a free Python ebook for experienced programmers available under the GNU Free Documentation License. A printed version has been published by Apress [[http://www.apress.com/]], and is available through all major outlets.

[[http://diveintopython.org|Home Page]]
----
'''Learning Python'''
 Mark Lutz

ISBN:0596513984
O'Reilly & Associates,
701 pages (October 2007)

Learning Python is meant for beginning Python programmers, and others seeking a quick introduction to the language. It focuses on core language fundamentals in depth, is based on Mark Lutz's Python training classes, and includes numerous exercises with solutions to guide the reader through a hands-on learning experience.

[[http://www.oreilly.com/catalog/9780596513986/|O'Reilly's catalog page]]
[[http://rmi.net/~lutz/about-lp3e.html|Author's book page]]
[[http://www.oreilly.com/catalog/9780596513986/toc.html|Sample chapters]]
[[http://www2.linuxjournal.com/lj-issues/issue66/3541.html|Review of first edition by Phil Hughes in Linux Journal]]
----
'''The Quick Python Book'''
 Daryl Harms, Kenneth Mc''''''Donald

ISBN:1884777740,
Manning Publications,
275 pages (October 1999)

A clear and concise description of Python aimed at readers who are already familiar with programming in at least one other language.

[[http://www.manning.com/getpage.html?project=harms&filename=Chapters.html|Two sample chapters]]
[[http://www.accu.org/bookreviews/public/reviews/q/q002082.htm|Review by Francis Glassborow in _C Vu_]]
[[http://www2.linuxjournal.com/lj-issues/issue73/3851.html|Review by Phil Hughes]]
[[http://www.amk.ca/python/books/qpb.html|Review by AMK]]
----
'''Learn to Program Using Python'''
 Alan Gauld

ISBN:0201709384,
Addison-Wesley,
270 pages (December, 2000)

This book teaches programming in Python to true beginners. It started as a popular Web tutorial, and been expanded into a complete book.

[[http://www.freenetpages.co.uk/hp/alan.gauld/index.htm|Home Page]]
----
'''Programming Python (Third Edition)'''
 Mark Lutz

ISBN:0596009259,
O'Reilly & Associates,
1596 pages (August, 2006)

A Python classic, updated and expanded to cover Python 2.5. The first edition, published in 1996, was the first Python book project to be signed. Programming Python is about what you can do with Python after you've mastered the language fundamentals - it assumes you already know the core language, and focuses on applications programming in gradual tutorial fashion. It is designed to be a natural follow-up to the book Learning Python. This book includes 300 pages on GUIs, 500 on Internet programming, and more on databases, systems programming, text processing, Python/C integration, and other topics. Also available in PDF form from O'Reilly.

[[http://www.oreilly.com/catalog/python3/|O'Reilly's catalog page]]
[[http://www.rmi.net/~lutz/about-pp3e.html|Author's book page]]
[[http://www.python.org/doc/essays/foreword.html|Foreword by Guido van Rossum]]
[[http://www.ercb.com/ddj/1997/ddj.9711.html|Review of the first edition by Greg Wilson]]
[[http://www.usenix.org/publications/login/1998-4/python.html|Review of the first edition by Terry Rooker in ;login:]]
[[http://dannyreviews.com/h/Python.html|Review of the first edition by Danny Yee]]
----
'''Python Pocket Reference (Third Edition)'''
 Mark Lutz

ISBN:0596009402,
O'Reilly & Associates,
160 pages (February, 2005)

This handy reference guide summarizes Python statements, built-in functions, escape and formatting codes, and other prominent Python language features.
----
'''Python Standard Library'''
 FredrikLundh

ISBN:0596000960,
O'Reilly & Associates,
250 pages (February 2001)

Based in part on 3,000 newsgroup articles written by Python veteran FredrikLundh over the last four and half years, this book provides sample scripts for all standard modules in the Python library. Also available in German.

[[http://www.pythonware.com/people/fredrik/librarybook.htm|Author's book page]]
[[http://effbot.org/zone/librarybook-index.htm|Electronic edition]]

----
'''Web Programming in Python: Techniques for Integrating Linux, Apache, and MySQL'''
 George K. Thiruvathukal, John Shafaee and Thomas Christopher

ISBN:0130410659,
Prentice Hall,
450 pages (October 2001)

The book has introductory chapters on Python, networking, Apache, Linux, and MySQL. It is a self- contained reference to Python and open-source programming that makes use of Python to develop real applications that are also available under an open source license.
----
'''Programming With Python'''
 Tim Altom with Mitch Chapman,

ISBN:0761523340,
Prima Publishing,
(October 1999)

[[http://www2.linuxjournal.com/lj-issues/issue73/3851.html|Review by Phil Hughes in Linux Journal]]
[[http://lists.tummy.com/pipermail/frpythoneers/2000-June/000085.html|Review by Cary Miller]]
----
'''Python Developer's Handbook'''
 Andre Lessa

ISBN:0672319942,
Sams,
600 pages (December 2000)
----
'''Python How to Program'''
 Harvey M Deitel, Paul J Deitel, Jonathan Liperi, Ben Wiedermann

ISBN:0130923613,
Prentice Hall,
1376 pages
(2002)

In the renowned Deitel series "How to Program"

[[http://vig.prenhall.com/catalog/academic/product/1,4096,0130923613,00.html|description]]
----
'''Text Processing in Python'''

 David Mertz

The free text is available at:

[[http://gnosis.cx/TPiP/]]

Buy the dead-trees version at:

[[http://tinyurl.com/jskh]]

A review by Danny Yee at:
[[http://dannyreviews.com/h/Text_Python.html]]

See also: TextProcessingInPython
----
'''Python Programming Patterns'''
Thomas Christopher


Prentice-Hall, 2001


ISBN: 0130409561

There's a
[[http://www.informit.com/articles/printerfriendly.asp?p=28672&rl=1|sample chapter]] at informIT

Reviews:
[[http://www.accu.org/bookreviews/public/reviews/p/p003210.htm|ACCU review]]
by Francis Glasborow;
one of several books in Mertz's
[[http://gnosis.cx/publish/programming/charming_python_b8.html|book roundup #3]]
----
'''Python Programming for the absolute beginner'''

 Michael Dawson

ISBN:1592000738 Premier Press, 456 pages (2003)

Simple intro accessible for middle school age and up. Very hands-on and fun.


[[http://www.premierpressbooks.com/ptr_detail.cfm?group=Programming&isbn=1%2D59200%2D073%2D8|Publisher's page]]
----
'''A Byte of Python'''

 Swaroop C H

A Byte of Python is a book on programming using the Python language. It serves as a tutorial or guide to the Python language for anyone. If all you know is how to save text files, then you can learn Python using this book. If you are an expert programmer who loves C, Perl, Java or C#, you can also learn Python using this book.

This book can be read online or downloaded from
[[http://www.swaroopch.com/notes/Python]]
----
'''Practical Python'''
 Magnus Lie Hetland

ISBN:1590590066,
619 pages, APress (August 2002)

The first half of this book introduces the Python language, and the second half demonstrates its usage
in various practical projects such as "automated document conversion, newsgroup administration, graphical PDF document generation, remote document maintenance, the creation of a peer-to-peer system with XML-RPC, database integration, and GUI and game development." A new edition of this book is available under the title '''Beginning Python: From Novice to Professional'''.

[[http://www.apress.com/book/bookDisplay.html?bID=93|Publisher's page]]
----
'''Beginning Python: From Novice to Professional'''
 Magnus Lie Hetland

ISBN:1-59059-519-x,
640 pages, APress (September 2005)

This is an update of '''Practical Python'''.

[[http://www.apress.com/book/bookDisplay.html?bID=10013|Publisher's page]]
----
'''Computer Programming is Fun!'''

 David Handy

208 pages, Handy Software and Publishing (April 2005)

Written by a homeschooling Dad for teenage youth, this introductory computer
programming book is for people who have no prior programming experience. Teaches
the basic principles of programming using Python, with lots of examples. Small video
game project at the end. Good for self-study or classroom use.

[[http://www.handysoftware.com/cpif/]]
----
'''Problem Solving with Algorithms and Data Structures'''
 Brad Miller and David Ranum

ISBN:1590280539,
Franklin Beedle & Associates,
December 2005

This is a textbook for a CS2 Data Structures Course.

[[http://knuth.luther.edu/~bmiller/python.html|Home Page]]
----
'''Python First: Introduction to Computing with Python'''

Atanas Radenski

The 'Python First' digital pack provides a gentle introduction to computer science. It is more than a book: Ten self-contained online chapters consist of e-texts, slides, 62 labs, tens of sample programs, and online quizzes. The 'Python First' pack includes a wealth of detailed self-guided labs that you can complete on your own.

[[http://studypack.com/comp/course/view.php?id=232|Home Page]]
----

'''Python First: The Joy of Success'''

Atanas Radenski

ISBN: 978159526-713-9, 512 pages, Llumina Press, April 2007

This book is a paper companion to the "Python First" digital pack from studypack.com. The complete digital study pack features e-texts, slides, a wealth of detailed self-guided labs that learners can complete on their own, sample programs, and extensive quizzes. The book offers a printed version of the e-texts and self-guided labs in the same format as they appear in the online digital pack.

[[http://www.llumina.com/store/python.htm|Publisher's page]]
----
'''Building Skills in Python'''

Steven F. Lott

How do you learn Python? By doing a series of exercises, each of which adds a single new feature of the language. This 250+ page book has 31 chapters that will help you build Python programming skills through a series of exercises. This book includes six projects from straight-forward to sophisticated that will help solidify your Python skills.

[[http://homepage.mac.com/s_lott/books/python.html]]
----
'''Building Skills in Programming
How To Write Your Own Software Using Python'''

Steven F. Lott

How do you learn to solve your own programs by writing programs? By doing a series of exercises, each of which builds up a part of the skill set we call "computer programming". This book has 54 chapters that will help you build basic programming skills through a series of exercises that grow from simple identification of the parts of your computer through to statistical simulations.

[[http://homepage.mac.com/s_lott/books/nonprogrammer.html]]
----
'''Building Skills in Object-Oriented Design'''

Steven F. Lott

How do you move from OO programming to OO design? Do a lot of design focused on building a sophisticated application program. This 269-page book has 43 chapters that will help you build OO design skills through the creation of a moderately complex family of application programs. This is a step-by-step guide to OO design and implementation using either the Java or Python programming languages.

[[http://homepage.mac.com/s_lott/books/oodesign.html]]
----
'''Python Programming in Context'''

Bradley N. Miller and David L Ranum

Python Programming in Context is a clear, accessible introduction to the fundamental programming and problem solving concepts necessary for students at this level. The authors carefully build upon the many important computer science concepts and problem solving techniques throughout the text and offer relevant, real-world examples and exercises to reinforce key material. Programming skills throughout the text are linked to applied areas such as Image Processing, Cryptography, Astronomy, Music, the Internet, and Bioinformatics, giving students a well rounded look of its capabilities.

[[http://www.jbpub.com/catalog/9780763746025/]]

----

----
'''How Would Pareto Learn(tm) Python!'''

[[http://www.testingperspective.com|Rahul Verma]]

"How Would Pareto Learn(TM)" is an effort to apply Pareto's principle to learning efforts - "Concentrate FIRST on those 20% things which are essential 80% of the times and then learn further". The target outcome is light-weight tutorials, which make one quickly get into programming mode, rather than sticking to excessive theoretical stuff. When one starts writing programs, the practical problems make learning more interesting. After reaching this mode, there are plenty of books and tutorials where you can find specific details. "How Would Pareto Learn(TM)"-series bridges the gap between very basic tutorials and comprehensive books.

How Would Pareto Learn(tm) Python! is the first in this series and has got encouraging feedback so far. One can read the book online in its present state at the following link:

[[http://www.testingperspective.com/tpwiki/doku.php?id=rverma:hwpl:intro]]

CategoryPythonInEducation CategoryDocumentation

The books on this page are all general introductions to the Python language. Most of these books will contain a few chapters on particular applications such as GUI interfaces or Web programming, but won't go into great detail on any one topic; refer to the PythonBooks page for lists of application-specific books. Experienced programmers who prefer a brief and condensed introduction should look at the list of ReferenceBooks.


Head First Programming by Paul Barry and David Griffiths

A Learner's Guide to Programming, using the Python Language

  • ISBN-10: 0596802374
  • ISBN-13: 978-0596802370
  • O'Reilly Media
  • 440 pages (November 2009)

Ever wished you could learn how to program from a book? If you have no previous programming experience, you might be wondering where to start. Head First Programming introduces the core concepts of writing computer programs--variables, decisions, loops, functions, and objects--which apply regardless of the programming language, but uses concrete examples and exercises in the dynamic and versatile Python language to apply and reinforce these concepts.

Learn the basic tools to start writing the programs that interests you, not the generic software someone else thinks you should have, and get a better understanding of what software can (and cannot) do. When you're finished, you'll have the necessary foundation to apply to whatever language or software project you need or want to learn.


Programming in Python 3: A Complete Introduction to the Python Language (Second Edition) by Mark Summerfield

  • ISBN10: 0321680561
  • Addison-Wesley Professional
  • 648 pages (November 2009)

This book teaches you how to write programs using Python 3 in good Python 3 style.

The book will be useful to people who program professionally as part of their job, whether as full-time software developers, or those from other disciplines, including scientists and engineers, who need to do some programming in support of their work. It will also prove ideal for those Python 2 programmers who need to migrate (or prepare to migrate) to Python 3. The book is also suitable for students—the only prerequisite is some basic knowledge of programming in any language, for example, Basic or Java, or of course Python itself.

The book teaches solid procedural style programming, then builds on that to teach solid object-oriented programming, and then goes on to more advanced topics such as descriptors and class decorators. But even newcomers to Python 3 should be able to write useful (although small and basic) programs after reading chapter 1, and then go on to create larger and more sophisticated programs as they work through the chapters.

The book's web site lists the table of contents and has links to extracts. It also has all the examples and exercise solutions available for download.


Python for Software Design: How to Think Like a Computer Scientist by Allen B. Downey, Olin College of Engineering, Massachusetts

  • ISBN-13: 9780521725965)
  • Cambridge University Press
  • 272 pages (March 2009)

Python for Software Design is a concise introduction to software design using the Python programming language. Intended for people with no programming experience, this book starts with the most basic concepts and gradually adds new material. Some of the ideas students find most challenging, like recursion and object-oriented programming, are divided into a sequence of smaller steps and introduced over the course of several chapters. The focus is on the programming process, with special emphasis on debugging. The book includes a wide range of exercises, from short examples to substantial projects, so that students have ample opportunity to practice each new concept. Exercise solutions and code examples are available from thinkpython.com, along with Swampy, a suite of Python programs that is used in some of the exercises.


Hello World! Computer Programming for Kids and Other Beginners by Warren Sande and Carter Sande

  • ISBN10: 1933988495
  • Manning Publications
  • 488 pages (January 2009)

"Computer programming is a powerful tool for children to 'learn learning,' that is, to learn the skills of thinking and problem-solving...Children who engage in programming transfer that kind of learning to other things."--Nicholas Negroponte, the man behind the One Laptop Per Child project that hopes to put a computer in the hands of every child on earth, January 2008

Your computer won't respond when you yell at it. Why not learn to talk to your computer in its own language? Whether you want to write games, start a business, or you're just curious, learning to program is a great place to start. Plus, programming is fun!

Hello World! provides a gentle but thorough introduction to the world of computer programming. It's written in language a 12-year-old can follow, but anyone who wants to learn how to program a computer can use it. Even adults. Written by Warren Sande and his son, Carter, and reviewed by professional educators, this book is kid-tested and parent-approved. You don't need to know anything about programming to use the book. But you should know the basics of using a computer--e-mail, surfing the web, listening to music, and so forth. If you can start a program and save a file, you should have no trouble using this book.

Color ebook and black and white print book are both available from the publisher at www.manning.com/sande.


IronPython in Action by Michael Foord

  • ISBN10: 1933988339
  • Manning Publications
  • 480 pages (March 2009)

IronPython is an implementation of Python for the Microsoft .NET framework, Mono, and the Silverlight and Moonlight browser plugins. IronPython in Action is an introduction to programming with IronPython for both .NET programmers interested in Python and Python programmers new to .NET.

IronPython in Action includes a swift paced Python tutorial, chapters introducing .NET libraries and structured application development with Python, integrating with other .NET languages like C# and VB.NET, server side web programming with ASP.NET and client side web programming with Silverlight, system administration, working with the WPF and Windows Forms user interface libraries and embedding the IronPython engine in .NET applications.

As well as covering specific topics and both Python and .NET libraries the book pays special attention to the nitty-gritty details of Python and .NET integration that previous experience with Python or C# won't necessarily have prepared you for.

Color ebook and black and white print book are both available from the publisher at www.manning.com/foord.


"Beginning Python: From Novice to Professional, Second Edition" Magnus Lie Hetland

ISBN13: 978-1-59059-982-2 Apress Inc, 688 pages (September 2008)

Gain a fundamental understanding of Python’s syntax and features with the second edition of Beginning Python, an up–to–date introduction and practical reference. Covering a wide array of Python–related programming topics, including addressing language internals, database integration, network programming, and web services, you’ll be guided by sound development principles. Ten accompanying projects will ensure you can get your hands dirty in no time.

Updated to reflect the latest in Python programming paradigms and several of the most crucial features found in the forthcoming Python 3.0 (otherwise known as Python 3000), advanced topics, such as extending Python and packaging/distributing Python applications, are also covered.

Home Page (includes electronic version)


Object-Oriented Programming in Python

  • Michael H. Goldwasser, David Letscher

This is a textbook for an object-oriented introduction to computer science course (CS1) using Python.

Home Page

0136150314, Prentice Hall Publishing, 688 pages (October 2007)


An Introduction to Python (version 2.5)

  • Guido van Rossum, and Fred L. Drake, Jr. (Editor)

0954161769, Network Theory Ltd, 164 pages (November 2006)

This is a printed edition of the official Python tutorial by Guido van Rossum. For each copy sold $1 will be donated to the Python Software Foundation.

Home Page (includes electronic version)


Python for Dummies (version 2.5)

  • Stef Maruch and Aahz Maruch

0471778648, For Dummies, 410 pages (August 2006)

Home Page

Following the usual Dummies style, this book takes a light-hearted approach to introducing Python. In addition to Python itself, Python for Dummies also gives lots of advice about good programming practices.


Introduction to Computing and Programming Using Python: A Multimedia Approach Mark Guzdial

ISBN: 0131176552 http://coweb.cc.gatech.edu/mediaComp-teach

An introduction to programming by manipulating digital media --- creating negatives and grayscale pictures, splicing sounds, implementing chromakey.


Core Python Programming

  • Wesley J. Chun

ISBN: 0132269937 (2nd ed.); 0130260363 (1st ed.)

Prentice Hall PTR / Pearson Education

~1120 pages (Sep 2006); 810 pages (Jan 2001)

The main goal of this book is comprehensively teaching you the core of the Python language, much more than just its syntax (which you don't really need a book to learn, right?). Knowing more about how Python works under the covers, including the relationship between data objects and memory management, will make you a much more effective Python programmer coming out of the gate. The advanced topics chapters are meant as complete intros or "quick dives" into each of those distinct subjects. However, if moving towards those specific areas of development, they are more than enough to get you pointed in the right direction. We would say that the book is 40% introductory, 40% intermediate (in-depth core Python material plus advanced topics chapters), and 20% reference -- it is *not* meant to be a substitute for a pure reference such as the Python Essential Reference or Python in a Nutshell.

The new 2nd edition is expanded (300 new pages!) and updated through Python 2.5 as well as confirmed functionality for future versions! Also added are a few new chapters of advanced material. As in the 1st edition, a plethora of easy to advanced exercises can be found at the end of every chapter to hammer the concepts home. At the moment, this is the most complete and up-to-date Python book on the market today.

From an anonymous reviewer: "Very well written. It is the clearest, friendliest book I have come across yet for explaining Python, and putting it in a wider context. It does not presume a large amount of other experience. It may be too slow for more advanced people, but it does go into some important Python topics carefully and in depth. Unlike too many beginner books, it never condescends or tortures the reader with childish hide-and-seek prose games. Not too many in-depth real-world examples in the book (hopefully he will do a followup volume), it sticks to gaining a solid grasp of Python syntax and structure."

Home Page (includes book reviews, errata, sample chapter, links to alternate editions, source code from the book, and more!)

Links regarding the 1st edition: IBM Developer Works review Linux Journal review Chinese edition O'Reilly Safari electronic edition Indian edition (English) Korean edition Association of C/C++ Users review Python Learning Foundation review Mississippi Python users group (Useless Python) review


Python Programming: An Introduction to Computer Science

  • John Zelle

1887902996, Franklin Beedle & Associates, December 2003

This is a textbook for a "traditional" introduction to computer science course (CS1) using Python.

Home Page


How to Think Like a Computer Scientist: Learning with Python

  • Allen Downey, Jeff Elkner and Chris Meyers

0971677506, Green Tea Press 288 pages

How to Think... is a free textbook available under the GNU Free Documentation License. It is a true beginners book. The ebook version is free and available in PDF, HTML and PostScript.

Home Page


Dive Into Python: Python for Experienced Programmers

  • Mark Pilgrim

1590593561, Apress 432 pages

Dive Into Python is a free Python ebook for experienced programmers available under the GNU Free Documentation License. A printed version has been published by Apress http://www.apress.com/, and is available through all major outlets.

Home Page


Learning Python

  • Mark Lutz

0596513984 O'Reilly & Associates, 701 pages (October 2007)

Learning Python is meant for beginning Python programmers, and others seeking a quick introduction to the language. It focuses on core language fundamentals in depth, is based on Mark Lutz's Python training classes, and includes numerous exercises with solutions to guide the reader through a hands-on learning experience.

O'Reilly's catalog page Author's book page Sample chapters Review of first edition by Phil Hughes in Linux Journal


The Quick Python Book

  • Daryl Harms, Kenneth McDonald

1884777740, Manning Publications, 275 pages (October 1999)

A clear and concise description of Python aimed at readers who are already familiar with programming in at least one other language.

Two sample chapters Review by Francis Glassborow in _C Vu_ Review by Phil Hughes Review by AMK


Learn to Program Using Python

  • Alan Gauld

0201709384, Addison-Wesley, 270 pages (December, 2000)

This book teaches programming in Python to true beginners. It started as a popular Web tutorial, and been expanded into a complete book.

Home Page


Programming Python (Third Edition)

  • Mark Lutz

0596009259, O'Reilly & Associates, 1596 pages (August, 2006)

A Python classic, updated and expanded to cover Python 2.5. The first edition, published in 1996, was the first Python book project to be signed. Programming Python is about what you can do with Python after you've mastered the language fundamentals - it assumes you already know the core language, and focuses on applications programming in gradual tutorial fashion. It is designed to be a natural follow-up to the book Learning Python. This book includes 300 pages on GUIs, 500 on Internet programming, and more on databases, systems programming, text processing, Python/C integration, and other topics. Also available in PDF form from O'Reilly.

O'Reilly's catalog page Author's book page Foreword by Guido van Rossum Review of the first edition by Greg Wilson Review of the first edition by Terry Rooker in ;login: Review of the first edition by Danny Yee


Python Pocket Reference (Third Edition)

  • Mark Lutz

0596009402, O'Reilly & Associates, 160 pages (February, 2005)

This handy reference guide summarizes Python statements, built-in functions, escape and formatting codes, and other prominent Python language features.


Python Standard Library

0596000960, O'Reilly & Associates, 250 pages (February 2001)

Based in part on 3,000 newsgroup articles written by Python veteran FredrikLundh over the last four and half years, this book provides sample scripts for all standard modules in the Python library. Also available in German.

Author's book page Electronic edition


Web Programming in Python: Techniques for Integrating Linux, Apache, and MySQL

  • George K. Thiruvathukal, John Shafaee and Thomas Christopher

0130410659, Prentice Hall, 450 pages (October 2001)

The book has introductory chapters on Python, networking, Apache, Linux, and MySQL. It is a self- contained reference to Python and open-source programming that makes use of Python to develop real applications that are also available under an open source license.


Programming With Python

  • Tim Altom with Mitch Chapman,

0761523340, Prima Publishing, (October 1999)

Review by Phil Hughes in Linux Journal Review by Cary Miller


Python Developer's Handbook

  • Andre Lessa

0672319942, Sams, 600 pages (December 2000)


Python How to Program

  • Harvey M Deitel, Paul J Deitel, Jonathan Liperi, Ben Wiedermann

0130923613, Prentice Hall, 1376 pages (2002)

In the renowned Deitel series "How to Program"

description


Text Processing in Python

  • David Mertz

The free text is available at:

http://gnosis.cx/TPiP/

Buy the dead-trees version at:

http://tinyurl.com/jskh

A review by Danny Yee at: http://dannyreviews.com/h/Text_Python.html

See also: TextProcessingInPython


Python Programming Patterns Thomas Christopher

Prentice-Hall, 2001

ISBN: 0130409561

There's a sample chapter at informIT

Reviews: ACCU review by Francis Glasborow; one of several books in Mertz's book roundup #3


Python Programming for the absolute beginner

  • Michael Dawson

1592000738 Premier Press, 456 pages (2003)

Simple intro accessible for middle school age and up. Very hands-on and fun.

Publisher's page


A Byte of Python

  • Swaroop C H

A Byte of Python is a book on programming using the Python language. It serves as a tutorial or guide to the Python language for anyone. If all you know is how to save text files, then you can learn Python using this book. If you are an expert programmer who loves C, Perl, Java or C#, you can also learn Python using this book.

This book can be read online or downloaded from http://www.swaroopch.com/notes/Python


Practical Python

  • Magnus Lie Hetland

1590590066, 619 pages, APress (August 2002)

The first half of this book introduces the Python language, and the second half demonstrates its usage in various practical projects such as "automated document conversion, newsgroup administration, graphical PDF document generation, remote document maintenance, the creation of a peer-to-peer system with XML-RPC, database integration, and GUI and game development." A new edition of this book is available under the title Beginning Python: From Novice to Professional.

Publisher's page


Beginning Python: From Novice to Professional

  • Magnus Lie Hetland

1-59059-519-x, 640 pages, APress (September 2005)

This is an update of Practical Python.

Publisher's page


Computer Programming is Fun!

  • David Handy

208 pages, Handy Software and Publishing (April 2005)

Written by a homeschooling Dad for teenage youth, this introductory computer programming book is for people who have no prior programming experience. Teaches the basic principles of programming using Python, with lots of examples. Small video game project at the end. Good for self-study or classroom use.

http://www.handysoftware.com/cpif/


Problem Solving with Algorithms and Data Structures

  • Brad Miller and David Ranum

1590280539, Franklin Beedle & Associates, December 2005

This is a textbook for a CS2 Data Structures Course.

Home Page


Python First: Introduction to Computing with Python

Atanas Radenski

The 'Python First' digital pack provides a gentle introduction to computer science. It is more than a book: Ten self-contained online chapters consist of e-texts, slides, 62 labs, tens of sample programs, and online quizzes. The 'Python First' pack includes a wealth of detailed self-guided labs that you can complete on your own.

Home Page


Python First: The Joy of Success

Atanas Radenski

ISBN: 978159526-713-9, 512 pages, Llumina Press, April 2007

This book is a paper companion to the "Python First" digital pack from studypack.com. The complete digital study pack features e-texts, slides, a wealth of detailed self-guided labs that learners can complete on their own, sample programs, and extensive quizzes. The book offers a printed version of the e-texts and self-guided labs in the same format as they appear in the online digital pack.

Publisher's page


Building Skills in Python

Steven F. Lott

How do you learn Python? By doing a series of exercises, each of which adds a single new feature of the language. This 250+ page book has 31 chapters that will help you build Python programming skills through a series of exercises. This book includes six projects from straight-forward to sophisticated that will help solidify your Python skills.

http://homepage.mac.com/s_lott/books/python.html


Building Skills in Programming How To Write Your Own Software Using Python

Steven F. Lott

How do you learn to solve your own programs by writing programs? By doing a series of exercises, each of which builds up a part of the skill set we call "computer programming". This book has 54 chapters that will help you build basic programming skills through a series of exercises that grow from simple identification of the parts of your computer through to statistical simulations.

http://homepage.mac.com/s_lott/books/nonprogrammer.html


Building Skills in Object-Oriented Design

Steven F. Lott

How do you move from OO programming to OO design? Do a lot of design focused on building a sophisticated application program. This 269-page book has 43 chapters that will help you build OO design skills through the creation of a moderately complex family of application programs. This is a step-by-step guide to OO design and implementation using either the Java or Python programming languages.

http://homepage.mac.com/s_lott/books/oodesign.html


Python Programming in Context

Bradley N. Miller and David L Ranum

Python Programming in Context is a clear, accessible introduction to the fundamental programming and problem solving concepts necessary for students at this level. The authors carefully build upon the many important computer science concepts and problem solving techniques throughout the text and offer relevant, real-world examples and exercises to reinforce key material. Programming skills throughout the text are linked to applied areas such as Image Processing, Cryptography, Astronomy, Music, the Internet, and Bioinformatics, giving students a well rounded look of its capabilities.

http://www.jbpub.com/catalog/9780763746025/



How Would Pareto Learn(tm) Python!

Rahul Verma

"How Would Pareto Learn(TM)" is an effort to apply Pareto's principle to learning efforts - "Concentrate FIRST on those 20% things which are essential 80% of the times and then learn further". The target outcome is light-weight tutorials, which make one quickly get into programming mode, rather than sticking to excessive theoretical stuff. When one starts writing programs, the practical problems make learning more interesting. After reaching this mode, there are plenty of books and tutorials where you can find specific details. "How Would Pareto Learn(TM)"-series bridges the gap between very basic tutorials and comprehensive books.

How Would Pareto Learn(tm) Python! is the first in this series and has got encouraging feedback so far. One can read the book online in its present state at the following link:

http://www.testingperspective.com/tpwiki/doku.php?id=rverma:hwpl:intro

CategoryPythonInEducation CategoryDocumentation

IntroductoryBooks (last edited 2023-08-03 20:15:37 by BenDicken)

Unable to edit the page? See the FrontPage for instructions.