Python
Python — простой и популярный язык программирования. Курс с нуля: установка, переменные, ввод и вывод, условия, циклы, списки, строки, функции, словари, файлы.
Python (читается «пайтон», часто говорят «питон») — язык программирования, который считается одним из самых простых для первого знакомства. Программа на Python похожа на обычные записи: меньше скобок и служебных слов, чем в других языках, а команды читаются почти как английские фразы. Сам Python бесплатен, его исходный код открыт, и он работает в Windows, macOS и Linux.
Где применяется
- Обучение. Python изучают в школах и университетах, на нём решают олимпиадные задачи. Во многих школах он приходит на смену Pascal.
- Анализ данных и искусственный интеллект. Таблицы, графики, статистика, нейросети — для всего этого есть готовые библиотеки.
- Сайты и боты. На Python пишут серверную часть сайтов, телеграм-ботов, программы для обмена данными.
- Автоматизация. Переименовать тысячу файлов, собрать отчёт из таблиц, проверить список адресов — короткая программа делает за секунды то, на что вручную уходят часы.
Что нужно для начала
- компьютер с Windows 10 или 11, macOS или Linux;
- Python 3.10 или новее — как его поставить, рассказано в первом уроке;
- редактор для программ: для начала хватит Thonny или IDLE, позже пригодится VS Code;
- знание английского не обязательно: служебных слов в Python меньше сорока, значение каждого объясняется в уроках.
Курс рассчитан на Python 3. Старый Python 2 с 2020 года не поддерживается, программы для него устроены иначе — если в чужом примере print написан без скобок, это код для Python 2.
Как пройти курс
Уроки идут по порядку: установка и первая программа, переменные, ввод и вывод, условия, циклы, списки, строки, функции, словари, файлы. Каждый урок опирается на предыдущие. В уроках почти все программы целые: их можно скопировать в редактор и запустить, а под программой показано, что она выведет. Если программа читает ввод с клавиатуры, то, что нужно набрать, показано отдельным блоком «Ввод».
Не ограничивайтесь чтением: набирайте примеры сами, меняйте числа и смотрите, что изменится. Ошибки на этом пути нормальны — сообщения об ошибках разобраны в справочнике. После каждого урока — несколько вопросов для проверки, в конце курса — итоговый тест.
Тем, кто уже знает Pascal, будет легче: условия, циклы и массивы устроены похоже, отличия отмечены в уроках. Сравнить с Pascal можно в теме Pascal.
Курс с нуля
- 1.Установка Python и первая программаКак установить Python и редактор для программ — Thonny, IDLE или VS Code, написать первую программу, сохранить её в файл .py и запустить.
- 2.Переменные и типы данныхЧто такое переменная в Python, как её создать и назвать, какие бывают типы — int, float, str, bool — и как переводить значения из одного типа в другой.
- 3.Ввод, вывод и арифметикаКак выводить данные функцией print, читать ввод с клавиатуры через input, превращать его в числа и считать: деление, остаток, степень, порядок действий.
- 4.Условия: if, elif, elseКак программа на Python принимает решения: сравнения, if, else и elif, логические and, or и not, отступы блоков и частые ошибки в условиях.
- 5.Циклы while и forКак повторять действия в Python: цикл while с условием, цикл for и range, перебор строки, сумма и произведение в цикле, вложенные циклы, break и continue.
- 6.СпискиСписки в Python с нуля: создание, индексы и срезы, добавление и удаление элементов, перебор в цикле, сумма и среднее, ввод списка с клавиатуры и ловушка с копией.
- 7.СтрокиКак работать с текстом в Python: кавычки и спецсимволы, индексы и срезы строки, методы upper, strip, replace, split и join, поиск, перебор букв и f-строки.
- 8.ФункцииКак написать свою функцию в Python: def, параметры и return, значения по умолчанию, несколько результатов, локальные и глобальные переменные, разница между print и return.
- 9.Словари и множестваСловари dict и множества set в Python: ключи и значения, get и перебор items, подсчёт слов, уникальные значения, объединение и пересечение множеств.
- 10.Файлы и исключенияКак прочитать и записать текстовый файл в Python, зачем указывать encoding utf-8, что такое исключения и как перехватывать ошибки через try и except.
Справочник
- f-строки и форматирование выводаКак подставлять значения в текст f-строками, выводить два знака после точки, выравнивать столбцы, разделять тысячи и писать проценты; старые способы format и %.
- IndentationError: ошибка отступаЧто значат ошибки IndentationError и TabError в Python — expected an indented block, unexpected indent, unindent does not match — и как быстро исправить отступы.
- input возвращает строку: как ввести числоПочему input в Python всегда возвращает строку, как получить число через int(input()) и float(input()) и что значат ошибки ValueError и TypeError при вводе.
- ModuleNotFoundError: No module namedЧто значит ModuleNotFoundError в Python и как его исправить: поставить пакет в тот же Python, узнать настоящее имя пакета, проверить интерпретатор в VS Code и Thonny.
- «python» не является внутренней или внешней командойПочему Windows не находит команду python и что делать: команда py, галочка PATH, перезапуск терминала, заглушка Microsoft Store; python3 в Linux и macOS.
- Виртуальное окружение venvКак создать и активировать виртуальное окружение Python командой python -m venv в Windows, Linux и macOS, поставить в него библиотеки и что делать с ошибками активации.
- Деление в Python: /, // и %Чем в Python отличаются деление /, целочисленное деление // и остаток %, что получается с отрицательными числами, чем это отличается от div и mod в Pascal.
- Как ввести несколько чисел в одной строкеКак в Python прочитать несколько чисел из одной строки через map(int, input().split()), ввести список, числа через запятую, числа по одному в строке и весь ввод сразу.
- Как выйти из цикла: break и continueКак в Python досрочно выйти из цикла через break, пропустить шаг через continue, выйти из вложенных циклов, зачем нужен while True и что делает else у цикла.
- Как запустить файл .pyКак запустить программу Python из командной строки Windows и терминала Linux, почему окно закрывается сразу после запуска и что значит ошибка can't open file.
- Как округлить число в PythonКак округлить число в Python: round до нужного знака, почему round(2.5) даёт 2, округление вверх и вниз через math, школьное округление через decimal и вывод двух знаков.
- Как отсортировать список в PythonСортировка списка в Python: sort и sorted, по убыванию, по длине и без учёта регистра через key, по второму элементу через lambda, сортировка словаря и частые ловушки.
- Как перевернуть строку в PythonКак перевернуть строку в Python срезом с шагом −1, через reversed и в цикле, проверить слово на палиндром, переставить слова задом наперёд и перевернуть число.
- Как прочитать и записать файл в PythonГотовые приёмы работы с текстовыми файлами в Python: записать, прочитать целиком и по строкам, дописать, найти файл рядом с программой; ошибки FileNotFoundError и UnicodeDecodeError.
- Как узнать версию PythonКак узнать, какая версия Python установлена: команды python --version и python3 --version, список версий в Windows, проверка версии из программы через sys.version_info.
- Как установить Python на WindowsУстановка Python на Windows 10 и 11 с python.org — обычным установщиком с галочкой PATH или менеджером установки, проверка командой python --version.
- Как установить библиотеку: pip installКак ставить библиотеки Python командой pip install, почему лучше писать python -m pip, и что делать с частыми ошибками pip: команда не найдена, externally-managed-environment.
- Как читать ошибку Python (Traceback)Как понять сообщение об ошибке Python: где в Traceback номер строки и вид ошибки, что значат SyntaxError, NameError, TypeError, ValueError, IndexError, KeyError и другие.
- Случайное число в PythonКак получить случайное число в Python модулем random: randint, random, choice, shuffle и sample, повторяемые числа через seed и надёжные пароли через secrets.
Официальная документация
- Официальная документация Python — https://docs.python.org/3/
- Учебник Python на python.org (на английском) — https://docs.python.org/3/tutorial/
- Загрузка Python — https://www.python.org/downloads/