Модуль 01 — Python и первая программа

От установки до первой программы, которая разговаривает с пользователем

Прогресс курса Модуль 1 из 9

Что вы освоите в этом модуле

01

Что такое Python

Python — язык программирования общего назначения. Программа на нём — обычный текстовый файл с расширением .py. Выполняет её интерпретатор — программа python3, которая читает текст и сразу исполняет команды. Отдельного шага компиляции, как в C или C++, нет: написали — запустили.

Где применяютПример задачи
Автоматизация и администрированиеРазобрать журнал сервера, переименовать тысячу файлов, выгрузить отчёт
Веб-разработкаСерверная часть сайта на Django или FastAPI
Анализ данныхПосчитать статистику продаж из таблицы, построить график
ТестированиеАвтотесты API и веб-интерфейса (курс «Основы тестирования ПО»)
Машинное обучениеОбучение и запуск моделей: библиотеки для этого пишутся прежде всего под Python

У Python простой синтаксис: блоки кода выделяются отступами, а не скобками, нет объявления типов переменных. Поэтому его выбирают первым языком. Обратная сторона — Python медленнее C в десятки раз на вычислениях в цикле; для большинства задач автоматизации это не важно, потому что программа больше ждёт диск и сеть, чем считает.

Существуют две ветки языка: Python 2 и Python 3. Python 2 не поддерживается с 2020 года и в новых системах не установлен. Курс — по Python 3; в примерах версия 3.13 из Debian 13. Код из курса работает в любой версии от 3.10.
02

Установка

Debian и Ubuntu. Python 3 уже установлен: на нём написаны системные утилиты. Проверьте версию и доставьте модули, которые понадобятся в модуле 08:

$ python3 --version
Python 3.13.5
$ sudo apt install python3 python3-venv python3-pip

Команда называется именно python3. Команды python в Debian по умолчанию нет — так система защищает старые скрипты, написанные для Python 2.

Windows. Скачайте Python с python.org. Начиная с версии 3.14 там предлагается Python install manager — он сам настраивает команды py и python. Если ставите классическим установщиком, в первом окне отметьте Add python.exe to PATH — без этого терминал не найдёт интерпретатор. После установки проверьте в PowerShell (версия будет той, что вы поставили):

PS> py --version
Python 3.13.5
PS> python --version
Python 3.13.5

py — программа запуска, которая ставится вместе с Python в Windows и выбирает нужную версию, если их несколько. Дальше в курсе команды записаны для Linux: python3 файл.py. В Windows вместо python3 пишите py или python.

Если в Windows команда python открывает Microsoft Store, значит, Python не добавлен в PATH, а срабатывает заглушка Windows. Переустановите Python с отметкой Add python.exe to PATH или отключите заглушку: Параметры → Приложения → Дополнительные параметры приложений → Псевдонимы выполнения приложений.
03

Интерактивный режим

Команда python3 без аргументов запускает интерактивный режим (его называют REPL — «прочитать, выполнить, напечатать, повторить»). Приглашение >>> ждёт команду; результат выражения печатается сразу:

>>> 2 + 2
4
>>> 7 / 2
3.5
>>> 2 ** 100
1267650600228229401496703205376
>>> "Привет" * 3
'ПриветПриветПривет'
>>> print("Привет, мир!")
Привет, мир!
>>> (15 + 25) * 2
80

Несколько наблюдений по этому сеансу. Деление / всегда даёт дробное число: 7 / 2 — это 3.5, а не 3. Целые числа в Python не ограничены по размеру: 2 ** 100 (два в сотой степени) считается точно. Строку можно умножить на число — она повторится. Строка в ответе показана в кавычках: интерактивный режим показывает значение так, как его записали бы в коде, а print — так, как его увидит пользователь.

Выход — exit() или Ctrl+D (в Windows Ctrl+Z, затем Enter). Интерактивный режим — для проверки идеи в одну-две строки: что вернёт функция, как работает операция. Всё, что больше, пишется в файл.

04

Первая программа в файле

Программу пишут в редакторе кода. Подойдёт любой, который сохраняет простой текст в UTF-8:

Редакторы

  • VS Code с расширением Python — подсветка, подсказки, запуск по кнопке, отладчик. Основной вариант для курса.
  • Thonny — простая среда для начинающих: Python уже внутри, отладчик показывает значения переменных по шагам.
  • IDLE — ставится вместе с Python в Windows; в Debian — пакет idle3.
  • nano или vim на сервере, где нет графики.

Создайте каталог для курса, в нём файл hello.py:

print("Привет, мир!")
print("Это моя первая программа на Python.")

Запуск — из терминала, в каталоге с файлом:

$ python3 hello.py
Привет, мир!
Это моя первая программа на Python.

Интерпретатор выполняет строки сверху вниз, по одной. Дошёл до конца файла — программа завершилась. В VS Code то же самое делает кнопка ▷ «Run Python File» в правом верхнем углу: она открывает терминал и вводит ту же команду.

Программа может считать, а не только печатать текст. Сколько секунд в сутках, неделе и году:

# Сколько секунд в сутках, в неделе и в году
day = 24 * 60 * 60
print("В сутках секунд:", day)
print("В неделе секунд:", day * 7)
print("В году (365 дней):", day * 365)
$ python3 seconds.py
В сутках секунд: 86400
В неделе секунд: 604800
В году (365 дней): 31536000

Строка, которая начинается с #, — комментарий: интерпретатор её пропускает. Комментарии пишут для человека: что делает программа и почему так, если это неочевидно.

05

Вывод: print

print — функция: имя, за которым в скобках идут аргументы через запятую. Она выводит аргументы через пробел и переходит на новую строку. Два именованных аргумента меняют это поведение: sep — чем разделять, end — чем закончить.

>>> print("Иван", "Петров", 19)
Иван Петров 19
>>> print("2026", "10", "15", sep="-")
2026-10-15
>>> print("Загрузка", end="... ")
Загрузка... >>> print("готово")
готово
>>> print()

>>> print("Первая строка\nВторая строка")
Первая строка
Вторая строка

end="... " оставил курсор на той же строке — следующий вывод продолжил её (в интерактивном режиме туда же встало и приглашение >>>). print() без аргументов выводит пустую строку. \n внутри строки — символ перевода строки.

06

Ввод: input

input("подсказка") выводит подсказку, ждёт, пока пользователь наберёт строку и нажмёт Enter, и возвращает набранное. Чтобы значение не пропало, его сохраняют в переменную — имя, за которым закрепляется значение:

# Программа спрашивает имя и здоровается
name = input("Как вас зовут? ")
print("Здравствуйте,", name)
print("Длина вашего имени:", len(name), "букв")
$ python3 greet.py
Как вас зовут? Мария
Здравствуйте, Мария
Длина вашего имени: 5 букв

name = input(...) читается справа налево: выполнить input, результат назвать name. Дальше name можно использовать сколько угодно раз. len — ещё одна встроенная функция: длина строки в символах; кириллица считается по буквам, а не по байтам.

input всегда возвращает строку, даже если пользователь ввёл цифры. Сложить два введённых числа «в лоб» не получится — "2" + "3" даст "23". Как превращать строку в число — в модуле 02.
07

Ошибки и как их читать

Ошибки в программе — нормальная часть работы. Важно уметь быстро понять сообщение интерпретатора. Ошибки бывают двух видов.

Синтаксическая ошибка (SyntaxError) — текст не соответствует правилам языка. Интерпретатор находит её до запуска, поэтому не выполняется ни одна строка, даже первая:

print("Начало")
print("Сумма:", 2 + 2
print("Конец")
$ python3 err1.py
  File "/home/student/python/err1.py", line 2
    print("Сумма:", 2 + 2
         ^
SyntaxError: '(' was never closed
[код 1]

Сообщение указывает файл, номер строки и место знаком ^: скобка открыта и не закрыта. Иногда интерпретатор замечает ошибку строкой ниже настоящей — если в указанной строке всё верно, посмотрите на предыдущую.

Ошибка выполнения (исключение) — программа синтаксически верна, но во время работы сделала невозможное. Строки до ошибки успели выполниться:

print("Начало")
total = 10
print("Итого:", totl)
print("Конец")
$ python3 err2.py
Начало
Traceback (most recent call last):
  File "/home/student/python/err2.py", line 3, in <module>
    print("Итого:", totl)
                    ^^^^
NameError: name 'totl' is not defined. Did you mean: 'total'?
[код 1]

Сообщение об исключении называется traceback, его читают снизу вверх. Последняя строка — тип ошибки и пояснение: NameError, имени totl нет, и даже подсказка «может быть, total?». Выше — где это случилось: файл, строка 3 и сама строка. [код 1] — программа завершилась с кодом возврата 1, то есть с ошибкой (здесь и дальше в курсе код показан, когда он не 0).

ОшибкаЧто обычно значит
SyntaxErrorНе закрыта скобка или кавычка, пропущено двоеточие, опечатка в ключевом слове
IndentationErrorЛишний или недостающий отступ в начале строки
NameErrorОпечатка в имени или переменная используется раньше, чем создана
TypeErrorОперация с неподходящим типом: строка плюс число
ValueErrorТип подходит, значение нет: int("двадцать")
ZeroDivisionErrorДеление на ноль

Отступ в Python — часть синтаксиса: он показывает, к какому блоку относится строка. Лишний пробел в начале строки — уже ошибка:

print("Начало")
    print("С отступом")
$ python3 err3.py
  File "/home/student/python/err3.py", line 2
    print("С отступом")
IndentationError: unexpected indent
[код 1]
08

Как оформлять код

У Python есть общепринятое руководство по стилю — PEP 8. Код, написанный по нему, одинаково читается в любой команде. Главное на старте:

Правила PEP 8 для начала

  • Отступ — 4 пробела, не табуляция. VS Code ставит пробелы сам при нажатии Tab.
  • Пробелы вокруг = и арифметических операций: total = price * count; после запятой — пробел.
  • Имена переменных — маленькими латинскими буквами через подчёркивание: total_price, а не TotalPrice и не сумма.
  • Строка — не длиннее 79–99 символов.
  • Комментарий объясняет «зачем», а не пересказывает код.

Кириллицу в именах Python допускает, но так не пишут: код читают и правят люди с разными раскладками, а библиотеки и примеры в документации — на английском. Кириллица уместна в строках и комментариях.

Ключевые выводы модуля

Запомните главное

  • Программа на Python — текстовый файл .py; запуск — python3 файл.py (в Windows — py файл.py)
  • Интерактивный режим >>> — для проверки одной-двух строк, программы пишутся в файлах
  • / всегда даёт дробное число, целые числа не ограничены по размеру
  • print выводит, input возвращает введённую строку — всегда строку
  • Traceback читают снизу вверх: тип ошибки, пояснение, затем файл и номер строки
  • Отступ — часть синтаксиса; по PEP 8 — 4 пробела
Практические задания — на учебном портале. Задания, критерии оценивания, сдача работ и оценки преподавателя — в курсе на portal.nevabit.ru. Учётную запись выдаёт преподаватель.
Все модули Модуль 02: Типы и выражения