Recommended literature, courses, and documentation for Python.


This list is part of the Community Supported Programming Learning Resources on Programming .

Blocked by member Nick Volynkin 30 Sep '16 at 13:25 .

The answers to this question are given by joint efforts: if you think that something can be improved, just make corrections in response! You cannot add new answers here .

Read more about blocked messages here .

  • Is this a replacement question for all old discussions? - Timofei Bondarev
  • @TimofeyBondarev, yes, the canonical faq. If you have something to share (books, courses, small annotations) - a common question - boldly fill in the answer. - Nofate
  • A rather large list of books can be found on the Python website, but I don’t know by what principle they should be moved here - Timofei Bondarev
  • @TimofeyBondarev, I added to the list what people advise here and in runet. And that is not quite rotten by the year of release. - Nofate
  • I also noticed that instead of creating canonical questions and answers in the original SO, they place this information in the label description . We need to understand which way is better - Timofei Bondarev

1 answer 1

Beginners

  • Official documentation

  • PEP 8 - Style Guide for Python Code

  • Learning Python (5th Edition) . Mark lutz

    • Russian translation: Learning Python . Mark Lutz.
  • Programming in Python 3: A. Mark summerfield

    • Russian translation: Programming in Python 3. Detailed manual . Mark Summerfield.
  • Python Essential Reference (4th Edition) . David M. Beazley.

    • Russian translation: Python. Detailed reference. David Beazley.
  • Dive Into Python 3 . Mark Pilgrim.

  • Learn the Pyramid of the Hard Way: The Third Way. Zed A. Shaw.

  • Simple Python. Modern programming style . Bill Lyubanovich, O'Reilly (translated by Peter), 2016, 480 p.

  • Python Programming for the Absolute Beginner . Michael dawson

    • Russian translation: We program in Python. Michael Dawson

      This book is good as a textbook, it has an explanation of the basic terms of programming, some recommendations on style and other useful for beginners. The author presents the material on the example of games - from the simplest console to full-fledged graphics. This makes the process of reading and learning very exciting.

Average level

  • Python in Practice: Create Better Programs With Concurrency, Libraries, and Patterns (Developer's Library) . Mark Summerfield.

    • Russian translation: Python in practice . Mark Summerfield.
  • Fluent Python . Luciano Ramalho

    • Russian translation: Python. To the heights of skill . Ramallo Luciano.
  • Core Python: Application Programming . Wesley j chun

    • Russian translation: Python. Creating applications . Wesley J. Chan.

Online Courses

Problem-oriented online resources

  • checkio.org is a good task resource where you can even get a comment from Guido van Rossum. The decision process is gamified.

  • projecteuler.net is a site with a set of tasks of varying complexity, you decide on any of the languages, enter the answer in the textbox, then you get to the forum where you can publish your cool solution and see how the problem was solved by other people.

  • codecombat.com - rpg, to pass which you need to write code in Python.

  • codewars - many tasks of different levels, you can choose a programming language, including Python.

  • hackerrank - solve problems in different programming languages ​​and simultaneously pump your resume.

  • codingame - learn to program by controlling a spacecraft and performing interesting missions.

  • 1000+ projects for beginners - a branch of r / learnprogramming subreddit.

Video courses


PyQT


Tkinter


Django


Flask

  • There was a good book "Python 3 and PyQt 5. Application Development" - Chp
  • HackerRank is a resource with tasks not only on python - it's a sin not to remember. - Vasily Ryabov
  • talentbuddy.co is not available, does anyone know if this resource is temporary or dead? - dred