Что случилось с types.ClassType в Python 3? - PullRequest
15 голосов
/ 09 февраля 2009

У меня есть скрипт, в котором я делаю некоторые магические вещи для динамической загрузки модуля и создания первого класса, найденного в модуле. Но я больше не могу использовать types.ClassType в Python 3. Как правильно сделать это сейчас?

Ответы [ 2 ]

17 голосов
/ 09 февраля 2009

Я понял это. Кажется, что классы имеют тип «тип». Вот пример того, как различать классы и другие объекты во время выполнения.

>>> class C: pass
... 
>>> type(C)
<class 'type'>
>>> isinstance(C, type)
True
>>> isinstance('string', type)
False
6 голосов
/ 09 февраля 2009

Использовалось для классических занятий . В Python 3 они исчезли. Я полагаю, вы могли бы использовать что-то вроде:

issubclass(ClassName, object)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...