Содержание
В Python существует 7 основных (встроенных) типов данных, которые делятся на три категории: числовые (int, float, complex), текстовые (str), последовательности (list, tuple) и булевый тип (bool). Именно эти семь типов — фундамент, на котором строится любая программа на Python. Понимание их особенностей (изменяемость, упорядоченность, способ хранения) критически важно для написания эффективного и безошибочного кода.
Полная таблица 7 основных типов данных Python
В таблице ниже представлены все семь основных типов с примерами и ключевыми признаками, которые должен знать каждый разработчик:
| Тип данных | Название | Пример | Изменяемый? | Упорядоченный? |
|---|---|---|---|---|
| int | Целое число | 42, -10, 0, 100_000 |
Нет (неизменяемый) | — |
| float | Число с плавающей точкой | 3.14, -0.001, 2.0, 1e-4 |
Нет | — |
| complex | Комплексное число | 3+2j, 1j, 4-0.5j |
Нет | — |
| str | Строка (текст) | "Hello", 'Привет', """Текст""" |
Нет (строки неизменяемы) | Да (по индексу) |
| list | Список | [1, 2, 3], ["a", "b"], [1, "hi", 3.14] |
Да (изменяемый) | Да (упорядоченный) |
| tuple | Кортеж | (1, 2, 3), ("x", "y"), (42,) |
Нет (неизменяемый) | Да (упорядоченный) |
| bool | Булевый тип | True, False |
Нет | — |
Важное уточнение: Это основные типы. В Python есть и другие встроенные типы (например, dict для словарей, set для множеств, frozenset, bytes, bytearray), но классических «7» относятся к фундаментальным, на которых держится программирование.
1. Числовые типы данных в Python
Числовые типы служат для математических операций и представления чисел.
int — Целые числа
Это любые целые числа — положительные, отрицательные или ноль. В Python 3 int не имеет ограничения по размеру (кроме доступной памяти).
age = 25
temperature = -5
large_number = 10**100 # Гугол, это работает!
price = 1_000_000 # Используйте подчеркивания для читаемости
float — Числа с плавающей точкой
Используются для вещественных чисел (с десятичной точкой). Основаны на двоичной арифметике, поэтому возможны погрешности.
pi = 3.14159
height = 1.75
result = 0.1 + 0.2 # Внимание: будет 0.30000000000000004, а не 0.3!
complex — Комплексные числа
Используются в научных и инженерных расчётах. Записываются как a + bj, где a — реальная часть, b — мнимая.
z = 3 + 4j
print(z.real) # 3.0
print(z.imag) # 4.0
2. str — Строковый тип данных
Строки в Python — это неизменяемые последовательности символов. Важнейшее свойство, которое часто упускают новички: строку нельзя изменить после создания. Любая операция (например, .upper()) создаёт новую строку.
name = "Ivan"
# name[0] = "P" # Ошибка! Строки неизменяемы
new_name = "P" + name[1:] # "Pvan" — создана новая строка
Строки поддерживают индексацию и срезы:
text = "Python"
print(text[0]) # 'P'
print(text[-1]) # 'n'
print(text[1:4]) # 'yth'
3. list — Список (главная рабочая лошадка)
Список — это изменяемая, упорядоченная коллекция, которая может содержать элементы любых типов (в том числе смешанных). Это самый часто используемый тип данных в Python.
mixed = [1, "hello", 3.14, True]
mixed[0] = 100 # Изменяем элемент
mixed.append("new") # Добавляем в конец
mixed.insert(0, "first") # Вставляем в начало
4. tuple — Кортеж (неизменяемый список)
Кортеж — это как список, но неизменяемый. Как только вы его создали, изменить его нельзя. За счёт неизменяемости кортежи работают быстрее и могут использоваться как ключи в словарях (в отличие от списков).
point = (10, 20)
# point[0] = 5 # Ошибка!
x, y = point # Распаковка: x=10, y=20
single_item = (42,) # Запятая обязательна, иначе это просто число
5. bool — Булевый тип (True/False)
Используется в логических выражениях и условных операторах. В Python bool является подклассом int, поэтому True == 1, а False == 0.
is_active = True
is_deleted = False
if is_active:
print("Пользователь активен")
# Логические операторы
result = True and False # False
result = True or False # True
Как проверить тип данных в Python
Используйте встроенную функцию type() для определения типа переменной:
print(type(42)) #
print(type(3.14)) #
print(type("Hello")) #
print(type([1,2])) #
print(type((1,2))) #
print(type(True)) #
Почему важно различать изменяемые и неизменяемые типы
Это ключевой момент, который влияет на поведение вашего кода. Изменяемые типы (list) можно менять на месте. Неизменяемые (int, float, str, tuple, bool) при любом изменении создают новые объекты.
Пример с изменяемым списком:
a = [1, 2, 3]
b = a # b ссылается на ТОТ ЖЕ список
b.append(4)
print(a) # [1, 2, 3, 4] — a тоже изменился!
Пример с неизменяемым числом:
x = 10
y = x
y = y + 5
print(x) # 10 — x не изменился
print(y) # 15
Что нужно знать о типах данных новичку
- Python — язык с динамической типизацией. Вам не нужно объявлять тип переменной заранее — интерпретатор определяет его сам во время выполнения.
- Тип можно менять. Одна и та же переменная может сначала хранить число, а потом строку (хотя так делать не рекомендуется).
- Преобразование типов (кастинг): используйте
int(),float(),str(),list(),tuple(),bool()для явного приведения.
# Преобразование строки в число
num = int("42") # 42
# Преобразование числа в строку
text = str(100) # "100"
# Преобразование в список
chars = list("abc") # ['a', 'b', 'c']
Эти семь типов данных — ваш фундамент в Python. С них начинается любая программа, любой скрипт, любой веб-сервер или бот. Освойте их — и вы поймёте, как работает большая часть кода на Python.
