mirror of
https://github.com/kennethreitz/python-guide.git
synced 2026-06-05 14:50:19 +00:00
143 lines
4.9 KiB
ReStructuredText
143 lines
4.9 KiB
ReStructuredText
Learning Python
|
|
===============
|
|
|
|
Beginner
|
|
--------
|
|
|
|
Learn Python Interactive Tutorial
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Learnpython.org is an easy non-intimidating way to get introduced to python.
|
|
The website takes the same approach used on the popular `Try Ruby <http://tryruby.org/>`_
|
|
website, it has an interactive python interpreter built into the site that
|
|
allows you to go through the lessons without having to install Python locally.
|
|
|
|
`Learn Python <http://www.learnpython.org/>`_
|
|
|
|
Learn Python the Hard Way
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
This is an excellent beginner programmer's guide to Python. It covers "hello
|
|
world" from the console to the web.
|
|
|
|
`Learn Python the Hard Way <http://learnpythonthehardway.org/book/>`_
|
|
|
|
|
|
Crash into Python
|
|
~~~~~~~~~~~~~~~~~
|
|
|
|
Also known as *Python for Programmers with 3 Hours*, this guide gives
|
|
experienced developers from other languages a crash course on Python.
|
|
|
|
`Crash into Python <http://stephensugden.com/crash_into_python/>`_
|
|
|
|
|
|
Dive Into Python 3
|
|
~~~~~~~~~~~~~~~~~~
|
|
|
|
Dive Into Python 3 is a good book for those ready to jump in to Python 3. It's
|
|
a good read if you are moving from Python 2 to 3 or if you already have some
|
|
experience programming in another language.
|
|
|
|
`Dive Into Python 3 <http://diveintopython3.ep.io/>`_
|
|
|
|
Think Python: How to Think Like a Computer Scientist
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Think Python attempts to give an introduction to basic concepts in computer
|
|
science through the use of the python language. The focus was to create a book
|
|
with plenty of exercises, minimal jargon and a section in each chapter devoted
|
|
to the subject of debugging.
|
|
|
|
While exploring the various features available in the python language the
|
|
author weaves in various design patterns and best practices.
|
|
|
|
The book also includes several case studies which have the reader explore the
|
|
topics discussed in the book in greater detail by applying those topics to
|
|
real-world examples. Case studies include assignments in GUI and Markov
|
|
Analysis.
|
|
|
|
`Think Python <http://greenteapress.com/thinkpython/html/index.html>`_
|
|
|
|
|
|
Python Koans
|
|
~~~~~~~~~~~~
|
|
|
|
Python Koans is a port of Edgecase's Ruby Koans. It uses a test-driven
|
|
approach, q.v. TEST DRIVEN DESIGN SECTION to provide an interactive tutorial
|
|
teaching basic python concepts. By fixing assertion statements that fail in a
|
|
test script, this provides sequential steps to learning python.
|
|
|
|
For those used to languages and figuring out puzzles on their own, this can be
|
|
a fun, attractive option. For those new to python and programming, having an
|
|
additional resource or reference will be helpful.
|
|
|
|
`Python Koans <http://bitbucket.org/gregmalcolm/python_koans>`_
|
|
|
|
More information about test driven development can be found at these resources:
|
|
|
|
`Test Driven Development <http://en.wikipedia.org/wiki/Test-driven_development>`_
|
|
|
|
A Byte of Python
|
|
~~~~~~~~~~~~~~~~
|
|
|
|
A free introductory book that teaches python at the beginner level, it assumes no
|
|
previous programming experience.
|
|
|
|
`A Byte of Python for Python 2.x <http://www.ibiblio.org/swaroopch/byteofpython/read/>`_
|
|
`A Byte of Python for Python 3.x <http://www.swaroopch.org/notes/Python_en:Table_of_Contents>`_
|
|
|
|
|
|
Advanced
|
|
--------
|
|
|
|
Pro Python
|
|
~~~~~~~~~~
|
|
|
|
This book is for intermediate to advanced Python programmers who are looking to understand how
|
|
and why Python works the way it does and how they can take their code to the next level.
|
|
|
|
|
|
Expert Python Programming
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
Expert Python Programming deals with best practices in programming Python and
|
|
is focused on the more advanced crowd.
|
|
|
|
It starts with topics like decorators (with caching, proxy, and context manager
|
|
case-studies), method resolution order, using super() and meta-programming, and
|
|
general PEP8 best practices.
|
|
|
|
It has a detailed, multi-chapter case study on writing and releasing a package
|
|
and eventually an application, including a chapter on using zc.buildout. Later
|
|
chapters detail best practices with writing documentation, test-driven
|
|
development, version control, and optimization/profiling.
|
|
|
|
`Expert Python Programming <http://www.packtpub.com/expert-python-programming/book>`_
|
|
|
|
The Python Tutorial
|
|
~~~~~~~~~~~~~~~~~~~~
|
|
|
|
This is the official tutorial, it covers all the basics, and offers a tour of the
|
|
language and the standard library, recommended for those who need a quickstart
|
|
guide to the language.
|
|
|
|
`The Python Tutorial <http://docs.python.org/tutorial/index.html>`_
|
|
|
|
References
|
|
----------
|
|
|
|
Python in a Nutshell
|
|
~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Python in a Nutshell, written by Alex Martelli, covers most cross-platform
|
|
python's usage, from its syntax to built-in libraries to advanced topics such
|
|
as writing C extensions.
|
|
|
|
The Python Language Reference
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
This is Python's reference manual, it covers the syntax and the core semantics of the
|
|
language.
|
|
|
|
`The Python Language Reference <http://docs.python.org/reference/index.html>`_
|