Программирование и IT
Как изучить Python с нуля
Python хорош для первого знакомства с программированием: код читается почти как текст, а стандартная библиотека закрывает большинство бытовых задач. Этот план ведёт от установки интерпретатора до собственных скриптов, покрытых тестами, — примерно за четыре месяца при занятиях около часа в день.
В этой статье
Установка: интерпретатор, редактор, окружение#
Скачай актуальную версию Python 3 с python.org. На Windows при установке
отметь пункт добавления Python в PATH, на macOS и Linux интерпретатор
обычно вызывается командой python3. Для редактора подойдёт VS Code с
расширением Python или PyCharm Community.
С первого проекта привыкай к виртуальным окружениям — они изолируют
библиотеки одного проекта от другого:
Интерактивный режим (python3 без аргументов) удобен для экспериментов:
набрали выражение — сразу увидели результат.
Месяц 1: синтаксис и управляющие конструкции#
Отступы в Python — часть синтаксиса: блок кода после if, for или def
выделяется четырьмя пробелами. Разбери типы int, float, str,
bool, форматирование строк через f-строки, условия и циклы for и
while. Первая осмысленная программа — таблица умножения или конвертер
температур:
= * 9 / 5 + 32
Месяц 2: коллекции и функции#
Главные структуры данных Python — список, кортеж, словарь и множество.
Научись выбирать между ними: словарь — когда нужен поиск по ключу,
множество — когда важна уникальность. Освой срезы, генераторы списков,
sorted с параметром key, распаковку. Функции пиши с понятными
именами, значениями по умолчанию и строкой документации. Упражнение месяца:
частотный словарь слов из текстового файла с выводом десяти самых частых.
Месяц 3: модули, файлы, исключения, тесты#
Разнеси код по модулям, научись импортировать свои и стандартные:
pathlib для путей, csv и json для данных, datetime для дат,
collections для счётчиков. Обрабатывай исключения точечно — лови
конкретный тип ошибки, а не всё подряд. Начни писать тесты: в
стандартной библиотеке есть unittest, популярная альтернатива —
pytest. Хорошая привычка — сначала написать тест на функцию, затем её
саму.
Месяц 4: проекты для портфолио#
Выбери два проекта и доведи их до состояния «другой человек может
запустить по README»:
- парсер: скачать страницу через
requests, вытащить данные, сохранить в CSV; - телеграм-бот с парой команд и хранением данных в SQLite;
- скрипт, который наводит порядок в папке загрузок по типам файлов;
- мини-анализ открытого датасета с графиком в
matplotlib.
Храни проекты в Git-репозитории, добавь файл зависимостей
requirements.txt и тесты. Прогон pytest без ошибок — минимальное
условие, чтобы считать проект законченным.
Как понять, что основы освоены#
- Ты решаешь задачи уровня «простые» и часть «средних» на площадках с
автопроверкой без подсказок. - Читаешь чужой код на 200 строк и можешь объяснить, что он делает.
- Находишь ответ в официальной документации быстрее, чем в поисковике.
- Проверяешь стиль кода линтером (
ruffилиflake8) и понимаешь его
замечания — многие из них опираются на PEP 8.
Типичные ловушки: изменяемое значение по умолчанию у функции
(def f(items=[])), сравнение с None через == вместо is, путаница
между копией списка и ссылкой на тот же список.
План по этапам
- Неделя 1 — установкаPython 3, редактор, виртуальное окружение, первые команды в интерактивном режиме.
- Месяц 1 — синтаксисТипы, f-строки, условия, циклы; конвертеры и таблицы в консоли.
- Месяц 2 — коллекции и функцииСписки, словари, множества, срезы, генераторы списков; частотный словарь по файлу.
- Месяц 3 — модули и тестыСтандартная библиотека, исключения, unittest или pytest.
- Месяц 4 — два проектаПроекты с README, requirements.txt и зелёными тестами в Git-репозитории.
Начать изучать эту тему у себя
План ляжет в твой репозиторий: отмечай этапы, веди конспект — история изменений покажет, как ты продвинулся.
Проверь себя
1.Что выведет код: print([1, 2, 3][-1])
2.Чему равно sum(range(5)) в Python?
3.Что выведет код: print("ab" * 3)
Источники
-
Документация Python 3Официальный учебник, справочник языка и стандартной библиотекибесплатно
-
PEP 8Официальное руководство по стилю кода на Pythonбесплатно
-
StepikБесплатные курсы по Python с задачами на автопроверкебесплатно
Было полезно?