Dear Frédéric
On 04/09/12 08:56, Frédéric Clette wrote:
> My main complaint regarding Python is the poorly designed documentation
> (also for libraries like Matplotlib). It has the form of a reference
> manual giving all details for Python language and library developers.
> This does not respond at all to the needs of users of the language!
> How to fill the huge gap between basic tutorials and this unstructured
> language dictionary? I would need something that goes directly to widely
> used elements of the language, shows how those elements can be
> associated (examples!) and gives a global picture (e.g. organigrams
> showing the class hierarchy and interdependencies inside libraries).
> So far, I spent a lot of time just for locating "obvious" information
> hidden in a heap of irrelevant details. Therefore, I joined this mailing
> list with the hope that exchanging questions may help taking shortcuts
> when a "how to" question arises.
For learning Python, I would recommend the reading of the following book
(unfortunately only available in french):
"Programmation Python : Conception et optimisation",
Auteurs: Tarek Ziadé, Stefan Richter
Edition: 2e édition (9 avril 2009)
Editeur: Eyrolles
http://www.eyrolles.com/Informatique/Livre/programmation-python-9782212124835
It covers basic things as which editor (IDE) to choose, how to structure
the code, what are the basic functions, modules of the language and more
complex things as class creation (inheritance, ...), python libraries
packaging, test-driven development, function decorators, OO programming,
code optimisation, ..;
Part of the book is also dedicated to several exercises with their
solution in order to have a more practical approach of the language.
It is well-written and I think can rapidly become a reference book for
its reader as it contains a description of all the main modules.
Finally lots of free ebook are available on-line. One that I have
started learning Python with is "Dive into Python":
http://www.diveintopython.net/
also available for Python 3 branch:
http://getpython3.com/diveintopython3/