Статья

Python: типы данных

5 сентября 2026~8 минут10–11 класс

Если «Python: типы данных» вызывает ступор — это нормально: тема собрана из простых идей. Покажем их по порядку: теория, пример, разбор задания и типичные ошибки.

Что такое типы данных в Python

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

Тип данных показывает, что хранится в переменной и какие действия разрешены. Например, в переменной может быть целое число, дробь, текст, ответ «да» или «нет», набор элементов. Python определяет тип автоматически в момент записи значения, поэтому заранее объявлять его не нужно.

\( age = 14 \)
name = "Маша"
\( is_ready = True \)
print(type(age)) → <class 'int'>

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

Числа: int и float

Для чисел Python использует несколько типов. int хранит целые значения: 0, 7, −12. float хранит числа с дробной частью: 3.14 или −0.5. В Python дробная часть записывается через точку, а не через запятую. Знак умножения в выражении обозначается символом *, деление — /.

\( a = 7 \)
\( b = 2 \)
\( a + b \to 9 \)
\( \dfrac{a}{b} \to 3.5 \)
\( a // b \to 3 \)
a % b → 1
a ** b → 49

Оператор // даёт целую часть частного, а % — остаток. Это удобно, когда нужно определить последнюю цифру числа или разложить количество предметов по группам. Возведение в степень записывается двумя звёздочками: 7² можно представить как 7 ** 2.

При смешивании int и float результат обычно становится float. Преобразовать значение можно функциями int() и float(), но дробная часть при переводе в целое отбрасывается, а не округляется.

Совет репетитора

Перед вычислением проверь, что ввёл пользователь: input() всегда возвращает строку. Для числа используй int(input()) или float(input()), если ожидается дробь.

Строки и логические значения

Строка, или str, — это последовательность символов в кавычках. В ней могут быть буквы, цифры, пробелы и знаки препинания. Число 25 и строка "25" выглядят похоже, но для Python это разные данные. Строки можно объединять оператором + и повторять оператором *.

first = "Анна"
last = "Петрова"
full = first + " " + last
print("Hi! " * 2) → Hi! Hi!

Полезные операции: len(text) возвращает длину строки, text[0] берёт первый символ, а text.lower() переводит буквы в нижний регистр. Индексация начинается с нуля, поэтому в слове "код" символ с индексом 0 — «к».

Тип bool имеет только два значения: True и False. Они появляются после сравнений: 5 > 3, 8 == 8, 4 != 7. Для объединения условий применяют and, or, not. Логические значения управляют ветвлениями if и циклами.

Списки, кортежи и словари

Список list хранит несколько элементов в заданном порядке. Его можно изменять: добавлять значения, удалять их и заменять элементы. Кортеж tuple похож на список, но после создания его элементы менять нельзя. Это удобно для данных, которые должны оставаться постоянными.

\( marks = [5, 4, 5] \)
marks.append(3)
\( point = (10, 20) \)
student = {"name": "Олег", "grade": 8}

В словаре dict информация хранится парами «ключ: значение». По ключу можно быстро получить нужные данные: student["name"]. Список обращается к элементу по индексу, а словарь — по ключу. Внутри коллекций могут находиться значения разных типов, хотя на практике лучше сохранять понятную структуру.

ТипПримерОсобенность
list[1, 2, 3]изменяемый порядок элементов
tuple(1, 2, 3)неизменяемая последовательность
dict{"x": 10}доступ по ключу

Понимание коллекций пригодится и в учебных задачах, и в проектах: например, для хранения оценок, товаров или результатов теста.

Преобразование типов и типичные ошибки

Данные часто нужно преобразовывать. Функция str() превращает значение в строку, int() — в целое число, float() — в дробное, bool() — в логическое значение. Но преобразование сработает не всегда. Например, int("abc") вызовет ошибку, потому что текст не изображает число.

age = input("Возраст: ")
\( age = int(age) \)
\( next_age = age + 1 \)
print("Через год:", next_age)

Частая ошибка — попытка сложить строку и число: "Возраст: " + 14. Исправить её можно через str(14) или удобную f-строку: f"Возраст: {age}". Ещё одна ловушка — сравнение == и присваивание =: первое проверяет равенство, второе записывает значение.

Ловушка

Пустая строка, ноль и пустой список считаются ложными в условии, хотя их типы различаются. Проверяй не только значение, но и type(), если результат кажется странным.

Для безопасной проверки типа можно использовать isinstance(value, int). Помни: bool связан с числами в Python, поэтому в сложных проверках лучше явно указывать ожидаемый тип.

Что запомнить

Тип данных определяет, какие значения хранит переменная и какие операции с ней допустимы. int — целые числа, float — дробные, str — текст, bool — True или False. Списки изменяются, кортежи сохраняют элементы, словари связывают ключи со значениями.

Перед вычислением данных из input() выполняй нужное преобразование. Для диагностики используй type() и isinstance(), а при сравнении не путай == с =. Один полностью разобранный пример полезнее механического чтения правил: попробуй изменить его и предсказать вывод каждой строки.

Следующий шаг — зарегистрируйся и реши 5 заданий бесплатно в личном кабинете. Там ты проверишь типы на практике и увидишь, где именно появляется ошибка. Если готовишься к экзамену, дополнительные задачи можно подобрать в разделах ОГЭ и ЕГЭ.

Что такое тип данных?

Тип данных описывает вид значения: число, текст, логическое значение или коллекцию. От типа зависят доступные операции и способ хранения информации.

Чем отличаются int и float?

int хранит целые числа, например 8, а float — числа с дробной частью, например 8.5. Результат обычного деления в Python имеет тип float.

Как закрепить тему после разбора?

Напиши несколько коротких программ: преобразуй ввод в число, сравни два значения, добавь элемент в список и получи значение из словаря. Затем проверь типы с помощью type().

Почему input() часто вызывает ошибку в вычислениях?

Функция input() возвращает строку, даже если пользователь ввёл цифры. Перед арифметикой преобразуй результат через int() или float().

Закрепить тему на практике

Теория без практики забывается за неделю. В личном кабинете Просто Урок — задания именно по этой теме с проверкой каждого шага. Регистрация бесплатная.

Важно. Материалы сайта носят информационно-образовательный характер и не являются публичной офертой (ст. 437 ГК РФ), индивидуальной консультацией или руководством к действию. Мы аккуратно работаем с фактами, но не гарантируем полную точность и актуальность: структура и правила экзаменов могут меняться — сверяйтесь с официальными источниками (ФИПИ, действующие кодификаторы и нормативные акты РФ). Администрация сайта не несёт ответственности за возможные неточности и за решения, принятые на основе материалов. Заметили неточность — напишите нам, мы исправим.