Книги и учебные ресурсы по Python

1,00
р.





Ответы на этот вопрос были написаны совместными усилиями сообщества. Для улучшения этого сообщения отредактируйте существующие ответы. Публикация новых ответов и другие действия для него недоступны.



Рекомендуемая литература, курсы и документация по Python.

Данный перечень входит в поддерживаемый сообществом Сборник учебных ресурсов по программированию.

Ответ
Начинающим
Официальная документация
PEP 8 - Style Guide for Python Code - рекомендации по оформлению кода
Русский перевод на pythonworld.ru Русский перевод на pep8.ru
Learning Python (5th Edition). Mark Lutz
Русский перевод: Изучаем Python. Марк Лутц.
Programming in Python 3: A Complete Introduction to the Python Language. Mark Summerfield
Русский перевод: Программирование на Python 3. Подробное руководство. Марк Саммерфилд.
Python Crash Cource (3rd Edition). Eric Matthes.
Русский перевод: Изучаем Python: программирование игр, визуализация данных, веб-приложения. 3-е изд. Мэтиз Э.
Python Essential Reference (4th Edition). David M. Beazley.
Русский перевод: Python. Подробный справочник. Дэвид Бизли.
Dive Into Python 3. Mark Pilgrim.
Русский перевод: Погружение в Python 3 Марк Пилгрим.
Learn Python the Hard Way: A Very Simple Introduction to the Terrifyingly Beautiful World of Computers and Code (3rd Edition). Zed A. Shaw.
Простой Python. Современный стиль программирования. Билл Любанович, O'Reilly (в переводе изд. Питер), 2016, 480 стр.
Python Programming for the Absolute Beginner. Michael Dawson
Русский перевод: Программируем на Python. Майкл Доусон.
Набор статей по Python 3 на русском (python-scripts.com). Большой минус - реклама, занимающая до половины полезного пространства.
Обзорная статья по Python на русском (professii.su). Много интересных фактов и учебных материалов для самостоятельного изучения.
Python 3 для начинающих (pythonworld.ru)
Викиучебники:
Python Programming Python - Викиучебник
Объектно-ориентированное программирование на Python Функциональное программирование на Python

Уроки по языку программирования Python (devpractice.ru)

Средний уровень
Python in Practice: Create Better Programs Using Concurrency, Libraries, and Patterns (Developer's Library). Mark Summerfield.
Русский перевод: Python на практике. Марк Саммерфилд.
Fluent Python. Luciano Ramalho
Русский перевод: Python. К вершинам мастерства. Рамальо Лучано.
Core Python: Application Programming. Wesley J Chun
Русский перевод: Python. Создание приложений. Уэсли Дж. Чан.
Python для сетевых инженеров - книга по основам Python в формате readthedocs. Несмотря на название подходит не только сетевым инженерам. Радует лаконичным оформлением и отсутствием рекламных баннеров.

Онлайн-курсы
Stepik: Программирование на Python - базовый курс, рассматриваются самые основы языка
Stepik: Python: основы и применение - можно рассматривать как продолжение предыдущего курса, вводится ООП, итераторы, ФП, обработка данных на практике
Stepik: Адаптивный тренажер Python - набор задач разного уровня сложности, курс подстраивается под уровень ученика
Stepik: Python. Functional Programming (на английском) - курс содержит теорию по функциональному программированию и набор задач, предполагающих решение в функциональном стиле.
Stepik: Практикум по математике и Python - есть вводный блок по основам Python, математические задачи (на теорию чисел, и др.), обработка данных с помощью numpy, pandas (есть блоки заданий для тренировки), визуализация с помощью matplotlib, seaborn, оптимизация и матричные разложения, основы теории вероятностей и статистики, дополнительные темы (JSON, Requests, API)
Stepik: Python для решения практических задач - курс в основном ориентирован на получение и обработку данных с внешних источников: рассматривается обработка веб-страниц, работа с веб-сервисами через REST API (модуль requests), работа с электронными таблицами (excel), XML, json, основы визуализации с помощью pyplot, публикация на сервере в виде html страниц
Udacity: Programming Foundations with Python
Udacity: Developing Scalable Apps in Python
Udacity: Design of Computer Programs - курс по программированию с интересными задачами, теория + практика Python.
Codecademy: Python - курс самого базового уровня, задания вида "повтори то что тебе только что показали"
Udemy: Automate the Boring Stuff with Python Programming - автоматизация рутинных действий с помощью Python (курс платный)
Специализация "Python для всех" на Coursera

Онлайн-ресурсы, ориентированные на решение задач
checkio.org - хороший ресурс с задачами с геймифицированным процессом решения.
projecteuler.net - сайт с набором задач различной сложности, можно решать на разных языках программирования, в том числе на Python
codecombat.com - rpg, для прохождения которой надо писать код на Python.
codewars - много задач разного уровня, можно выбрать язык программирования, в том числе есть Python.
hackerrank - решаешь задачи на разных языках программирования и одновременно прокачиваешь своё резюме.
codingame - учишься программировать, выполняя интересные миссии, составляя ботов и соревнуясь с другими участниками в программировании на скорость.
1000+ проектов для начинающих - ветка из r/learnprogramming subreddit.
Hyperskill - сайт с проектами для обучения программированию на Java, Kotlin, Python. Есть интеграция с Educational версиями продуктов JetBrains. Раздел по Python пока в разработке.
LeetCode - много задач, разбитых на три категории сложности. По подписке можно получить информацию о том, в каких компаниях на собеседованиях встречаются представленные задачи.

Видеокурсы
Программирование на Python - курс лекций от Computer Science Center Алгоритмы и структуры данных на Python - лекции МФТИ

Библиотеки для реализации графического интерфейса (GUI)
PyQT
PyQt. Создание оконных приложений на Python 3. Н.А. Прохоренко. Introduction to Python Programming and Developing GUI Applications with PyQT. B. M. Harwani. PyQt5 tutorial (англ.)
Перевод нескольких примеров

Python GTK
The Python GTK+ 3 Tutorial (англ.)
Tkinter
Раздел документации Python 3 по Tkinter (англ.) tkinterbook (An Introduction to Tkinter) (англ.) (архив) wiki.python.org/moin/TkInter (англ.) TkDocs (англ.) Курс по библиотеке Tkinter языка Python (Викиверситет) GUI Help/Tkinter book (викиучебник) Серия статей по tkinter на сайте PythonRu.com python-scripts.com: Ознакомление с Tkinter (примеры избыточны, сразу вводится ООП, поэтому не всегда подходит новичкам)
wxPython
Официальный сайт Документация (на английском) wxPython in Action Noel Rappin and Robin Dunn, March 2006 ISBN 9781932394627, 584 pages
Частичный перевод (на момент добавления записи переведено 14 из 18 глав)

Kivy
Kivy wiki (англ.) - коллекция полезной информации по Kivy Getting started (англ.) - официальное руководство Kivy: Interactive Applications in Python. Roberto Ulloa Статьи по Kivy на Хабре

Веб-фреймворки
Django
Официальная документация (на английском)
Перевод документации Django 3: https://djbook.ru/rel3.0/
Web Development with Django Cookbook. Aidas Bendoraitis. Two Scoops of Django: Best Practices For Django 1.6. Daniel Greenfeld, Audrey Roy. Курс Django Girls Веб-фреймворк Django (Python) Django 2.1. Практика создания веб-сайтов на Python, Дронов В.А, 2019 (книга на русском)
Flask
Официальная документация (на английском)
Перевод документации
The Flask Mega-Tutorial от Miguel Grinberg
Перевод на Хабре:
Мега-Учебник Flask Мега-Учебник Flask (издание 2018) Мега-Учебник Flask (издание 2024)


FastAPI
Официальная документация (на английском) Официальная документация (на русском) Хабр: Знакомство с FastAPI