Зарегистрируйтесь, чтобы продолжить обучение

Сильная (или Строгая) типизация Основы Python

Python относится к типам данных очень серьёзно. Если вы попытаетесь выполнить операцию между несовместимыми типами — программа выдаст ошибку. Всё дело в том, что Python — язык со строгой (или сильной) типизацией.

🧮 Что это значит на практике?

Допустим, вы складываете два числа:

print(1 + 7)  # => 8

Всё отлично. Операция сложения допустима для чисел, поэтому программа отработает и выведет на экран 8. А что будет, если попробовать сложить число и строку?

print(1 + '7')
# TypeError: unsupported operand type(s) for +: 'int' and 'str'

Python сообщает, что не может сложить int и str. Это ошибка типов: значения принадлежат к разным категориям, и программа отказывается продолжать.

🔎 Почему так строго?

Python защищает вас от неочевидных и опасных ошибок. Он требует, чтобы вы явно указали, как вы хотите преобразовать данные:

  • либо сделать строку числом (int('7'));
  • либо число строкой (str(1)).

Мы научимся делать это чуть позже.

🔁 А как в других языках?

Не все языки такие. Например, PHP и JavaScript используют слабую типизацию — они автоматически преобразуют типы, когда считают это «разумным»:

1 + '7' // => '17'

В этом примере число 1 неявно превращается в строку '1', и результатом становится '17'.

Сначала может показаться, что слабая типизация — это удобно. Меньше кода, всё "просто работает". Но на практике это приводит к:

  • Неявным преобразованиям, о которых программист даже не подозревает.
  • Непредсказуемому поведению кода.
  • Трудным для отладки ошибкам, которые появляются в самых неожиданных местах.

Такие ошибки особенно сложно поймать, потому что программа может «иногда работать, иногда нет» — в зависимости от типа данных, которые в неё попали.

📌 Вывод

Python — язык со строгой типизацией. Он не позволяет выполнять операции между несовместимыми типами без явного преобразования. Это делает программы надёжнее и понятнее. Мы ещё научимся преобразовывать данные из одного типа в другой — и делать это всегда сознательно.

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов
Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Наши выпускники работают в компаниях:

Логотип компании Альфа Банк
Логотип компании Aviasales
Логотип компании Yandex
Логотип компании Tinkoff