Python Glossary English

все Python 3inspectфункция

inspect.isclass()

проверка вида объекта

Проверяет, что объект — класс, встроенный или свой; экземпляр класса классом не является.

Синтаксис

inspect.isclass(object) -> bool

Параметризованный обобщённый тип list[int] классом не считается: isclass даёт False, хотя list[int]() создаёт список — это types.GenericAlias. Функция эквивалентна isinstance(obj, type), так что класс с метаклассом тоже проходит. Чтобы спросить «подкласс ли это», сначала нужна эта проверка: issubclass(3, int) падает с TypeError.

Примеры

import inspect
class A: pass
print(inspect.isclass(A), inspect.isclass(A()))  # → True False
print(inspect.isclass(int), inspect.isclass(list[int]))  # → True False
issubclass(3, int)  # → TypeError: issubclass() arg 1 must be a class

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности