Выяснить тип результата выражений

Обновлено: 22.11.2024

В Python есть две функции type() и isinstance() с помощью которых можно проверить к какому типу данных относится переменная.

Разница между type() и isinstance()

type() возвращает тип объекта

isinstance() возвращает boolean значение - принадлежит объект данному типу или нет

Встроенная функция type() это самый простой способ выяснить тип. Вы можете воспользоваться следующим образом.

Пример использования type()

В Python четырнадцать типов данных.

Для начала рассмотрим три численных типа (Numeric Types):

  • int (signed integers)
  • float (вещественные числа с плавающей точкой)
  • complex (комплексные числа)

Создайте три переменные разного численного типа и проверьте работу функции:

var_int = 1380 var_float = 3.14 var_complex = 2.0-3.0j print (type(var_int)) print (type(var_float)) print (type(var_complex))

Рассмотрим ещё несколько примеров

Команда type

Есть ещё полезная команда type которая решает другую задачу.

С помощью команды type можно, например, определить куда установлен Python.

Подробнее об этом можете прочитать здесь

python3 is hashed (/usr/bin/python3)

python3 is hashed (/usr/bin/python)

isinstance()

Кроме type() в Python есть функция isinstance(), с помощью которой можно проверить не относится ли переменная к какому-то определённому типу.

Иногда это очень удобно, а если нужно - всегда можно на основе isinstance() написать свою функцию.

Пример использования

Из isinstance() можно сделать аналог type()

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

Напишем свою фукнцию по определению типа typeof() на базе isinstance

Протестируем нашу функцию

var_list is list

В других языках

  • Си: такой функции нет.
  • C++: похожую задачу решает функция typeid()

Читайте также: