Python Функция type()
Описание
Функция type() возвращает тип объекта, если передан первый параметр, и возвращает новый объект типа при трёх параметрах
Разница между isinstance() и type():
type() не рассматривает подкласс как тип суперкласса; наследование не учитывается.
isinstance() рассматривает подкласс как тип суперкласса; наследование учитывается.
Если вы хотите определить, одинаковы ли два типа, рекомендуется использовать isinstance().
Синтаксис
Ниже приведён синтаксис метода type():
type(object) type(name, bases, dict)
Parameters
- name -- Имя класса.
- bases -- Кортеж базовых классов.
- dict -- Словарь, переменные пространства имён, определённые в классе.
Возвращаемое значение
С одним параметром он возвращает тип объекта; с тремя параметрами он возвращает новый объект типа.
Примеры
Ниже показаны примеры использования функции type():
# Пример с одним параметром
>>> type(1)
<type 'int'>
>>> type⟦⟧пример('example')
<type 'str'>
>>> type([2])
<type 'list'>
>>> type({0:'zero'})
<type 'dict'>
>>> x = 1
>>> type( x ) == int # Проверить, равны ли типы
True
# Три параметра
>>> class X(object):
... a = 1
...
>>> X = type('X', (object,), dict(a=1)) # Создать новый тип X
>>> X
<class '__main__.X'>
Разница между type() и isinstance():
class A:
pass
class B(A):
pass
isinstance(A(), A) # возвращает True
type(A()) == A # возвращает True
isinstance(B(), A) # возвращает True
type(B()) == A # возвращает False
Встроенные функции Python