Типы данных Python

    Команда Simple-Server
    03.06.2026
    8 мин

    Материал подготовлен командой Simple-Server для администраторов VPS и выделенных серверов. Команды и пути проверяйте на тестовой машине перед production.

    Кратко о задаче

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

    Объявление переменной выглядит следующим образом:

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

    У каждой переменной есть свой адрес в памяти. Определить его можно, используя функцию id():

    Для переменной x из примера выше будет вот такой адрес:

    Также в Python существует функция type(), благодаря которой мы можем узнать тип данных, выбранный для конкретной переменной:

    Как видно по картинке ниже, для x был определен целочисленный тип данных.

    Процесс определения типа данных называется типизацией. Она бывает двух видов: статическая и динамическая. В Python используется второй вариант. Именно поэтому при использовании одной и той же переменной она может представлять объекты совершенно разных типов данных. Например:

    first_example = 'Привет' print(type(first_example)) first_example = 100 print(type(first_example)) first_example = 3.14 print(type(first_example))

    Во всех случаях вызова print, мы увидим разный результат. Он показан на картинке ниже.

    В данном разделе разберём все основные**** типы данных в языке программирования Python. Их можно разделить на две группы: неизменяемые и изменяемые объекты.

    Неизменяемые объекты — это те объекты, чье состояние и содержимое нельзя изменить. При попытке изменить значение подобных объектов будет создаваться новый объект с указанным значением и тем же именем. К неизменяемым относятся объекты типа число, строка или кортеж.

    Изменяемые объекты — это те объекты, которые возможно изменить после их создания. К данной группе относятся объекты типа список, словарь или множества.

    Чтобы проверить изменяемость объектов, воспользуемся функцией id(), которую мы рассматривали немного ранее, и сравним адреса в памяти до внесения изменений и после:

    first_example = 50 second_example = [50, 100, 150] print(f'Адрес в памяти до изменения объекта int = {first_example} : {id(first_example)}') print(f'Адрес в памяти до изменения объекта list = {second_example} : {id(second_example)}') first_example += 50 second_example += [200] print(f'Адрес в памяти после изменения объекта int = {first_example} : {id(first_example)}') print(f'Адрес в памяти после изменения объекта list = {second_example} : {id(second_example)}')

    Результат работы программы продемонстрирован на картинке ниже.

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

    Данные свойства объектов необходимо учитывать, например, при работе с функциями. В качестве аргументов функции лучше использовать копии изменяемых объектов, чтобы не повредить оригинал.

    В следующих подразделах разберём**** типы данных в языке Python более детально.

    В первую очередь рассмотрим**** тип данных «числа» в Python.

    Ниже представлена таблица, содержащая название и описание числового типа данных, а также его обозначение и примеры. Кроме того, сюда был добавлен логический тип данных.

    Тип данныхОписаниеОбозначениеПример
    Целые числаПоложительные и отрицательные числа без дробной части.intexample1 = 5 example2 = -1234
    Числа с плавающей точкойПоложительные и отрицательные числа с дробной частью.floatexample3 = 3.14 example4 = -43.4132
    Комплексные числаЧисла в формате: a + bj, где a и b — вещественные числа, а j — мнимая единица. Передача комплексных чисел происходит с использованием функции complex(). Чтобы отобразить вещественную часть, используется синтаксис: имя_переменной.real Чтобы отобразить мнимую часть, используется синтаксис: имя_переменной.imagcomplexexample5 = complex(5,4)
    ЛогическийЛогический тип данных принимает всего 2 значения: True и False. Используется он зачастую для реализации ветвлений или установки флажков.boolexample7 = True example8 = False

    Положительные и отрицательные числа без дробной части.

    Положительные и отрицательные числа с дробной частью.

    где a и b — вещественные числа, а j — мнимая единица.

    Передача комплексных чисел происходит с использованием функции complex().

    Чтобы отобразить вещественную часть, используется синтаксис:

    Чтобы отобразить мнимую часть, используется синтаксис:

    Логический тип данных принимает всего 2 значения: True и False. Используется он зачастую для реализации ветвлений или установки флажков.

    Строковый тип данных предназначен для хранения текстовой информации или последовательности байтов. Чтобы объявить строку, необходимо воспользоваться одинарными, двойными либо тройными кавычками, как это показано в примере ниже:

    example_srt1 = ‘Пример строки №1’ example_srt2 = “Пример строки №2” example_srt3 = '''Пример строки №3'''

    Как мы уже говорили раньше, строки относятся к неизменяемым объектам.

    Списки в Python — это упорядоченные коллекции элементов, которые могут быть представлены различными типами данных. Они могут быть изменяемыми, что означает, что вы можете добавлять, удалять и изменять элементы в списке.

    Объявление списка происходит за счет перечисления через запятую его элементов внутри квадратных скобок, как это показано в примере ниже:

    example_list = [1, 5.7, 'hello']

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

    example_list = [1, 5.7, 'hello'] print(f'Третий элемент списка: {example_list[2]}') print(f'Первый и второй элемент списка: {example_list[0:2]}')

    Результат работы кода показан на картинке ниже.

    Кортежи в Python — это те же списки, однако они в свою очередь неизменяемы. Их преимущество заключается в том, что интерпретатор работает с ними гораздо быстрее. Поэтому, если вам важно, чтобы ваша программа работала быстрее, а данные оставались неизменными — используйте кортежи.

    Объявление кортежа происходит за счет перечисления через запятую его элементов внутри круглых скобок, как это показано в примере ниже:

    example_tuple = (1, 5.7, 'hello')

    Извлечение элементов происходит так же, как и у списков. Однако важно помнить, что изменить их не получится.

    Словари — это неупорядоченная перечень пар в формате ключ-значение. Они предназначены для тех случаев, когда пользователю требуется обеспечить быстрый доступ к данным за счет использования соответствующего ключа.

    Чтобы объявить словарь, необходимо перечислить данные в формате ключ-значение в фигурных скобках, как это показано в примере ниже:

    example_dict = { 'name':'Peter', 'age':33, 'country':'Russia' }

    Важно помнить, что значения могут быть любого типа данных, а ключи только неизменяемыми.

    Как мы и говорили, чтобы получить значение, используем соответствующий ключ:

    example_dict = { 'name':'Peter', 'age':33, 'country':'Russia' } print(f'Peter from: {example_dict["country"]}') print(f'His age: {example_dict["age"]}')

    Результат работы программы продемонстрирован на картинке ниже.

    Множество — это набор уникальных и неупорядоченных элементов неизменяемого типа.

    Чтобы объявить множество, необходимо перечислить элементы через запятую в фигурных скобках, как это показано в примере ниже:

    example_set = {1,2,3,4,5}

    Если мы попробуем передать в множество дублирующиеся элементы, то интерпретатор автоматически удалит их. Например:

    example_set = {1,2,3,4,5,1,2,3,4,5} print(example_set)

    В итоге, функция print(example_set) выведет следующее:

    Еще одна особенность множеств в том, что над ними можно выполнять ряд математических операций (объединение, разность, пересечение).

    • Все объекты имеют свои уникальные типы данных (int, string, list и т.д.) и создаются с использованием конструкторов соответствующих классов.
    • Переменные в Python — это названия для области памяти вычислительной машины, в которых впоследствии будут храниться самые разные значения. У каждой переменной в коде обязательно есть свой тип данных, который указывает интерпретатору на то, что можно хранить в этой переменной, и какое количество памяти нужно выделить для нее.
    • Неизменяемые объекты — это те объекты, чье состояние и содержимое нельзя изменить. При попытке изменить значение подобных объектов, будет создаваться новый объект с указанным значением и тем же именем. К неизменяемым относятся объекты типа число, строка или кортеж.
    • Изменяемые объекты — это те объекты, которые возможно изменить после их создания. К данной группе относятся объекты типа список, словарь или множества.
    • К числовому типу данных относятся целые числа, числа с плавающей запятой и комплексные числа.
    • Логический тип данных принимает всего два значения: True или False.
    • Строковый тип данных предназначен для хранения текстовой информации или последовательности байтов.
    • Списки в Python — это упорядоченные коллекции элементов, которые могут быть представлены различными типами данных.
    • Кортежи в Python — это те же списки, однако они в свою очередь неизменяемы.
    • Словари — это неупорядоченная перечень пар в формате ключ-значение.
    • Множество — это набор уникальных и неупорядоченных элементов неизменяемого типа.

    Нужен сервер для практики? Арендуйте VPS/VDS в России — root-доступ, NVMe, DDoS-защита и поддержка 24/7.

    VPS для проекта

    VPS с root-доступом, NVMe и поддержкой 24/7 на Simple-Server.

    StarterVDS

    490

    в месяц

    1 ядро

    1 ГБ RAM

    20 ГБ NVMe

    • 1 IPv4
    • KVM
    • Root-доступ
    • Безлимитный трафик
    Заказать VPS
    Рекомендуем

    PerformanceVDS

    1190

    в месяц

    2 ядра

    4 ГБ RAM

    60 ГБ NVMe

    • 1 IPv4
    • KVM
    • Root-доступ
    • Базовая DDoS-защита
    Заказать VPS

    Нужна другая конфигурация или чистый VPS без панели?

    Все тарифы VPS

    Похожие статьи, которые могут быть вам интересны