Python проверяет экземпляры классов

Есть ли способ проверить, является ли объект экземпляром класса, а не экземпляром конкретного класса, но экземпляр любого класса, я могу проверить, что объект не является классом, а не модулем, а не traceback и т. Д., Но мне интересно в простом решении

8 Solutions collect form web for “Python проверяет экземпляры классов”

isinstance() – ваш друг здесь. Он возвращает логическое значение и может использоваться следующими способами для проверки типов.

 if isinstance(obj, (int, long, float, complex)): print obj, "is a built-in number type" if isinstance(obj, MyClass): print obj, "is of type MyClass" 

Надеюсь это поможет.

Вы пробовали встроенную функцию isinstance() ?

Вы также можете посмотреть на hasattr(obj, '__class__') чтобы узнать, был ли объект создан из какого-либо типа класса.

Я опаздываю. В любом случае, подумайте, что это должно сработать.

 is_class = hasattr(obj, '__name__') 
 class test(object): pass type(test) 

возвращается

 <type 'type'> instance = test() type(instance) 

возвращается

 <class '__main__.test'> 

Так что это один из способов рассказать им обособленно.

 def is_instance(obj): import inspect, types if not hasattr(obj, '__dict__'): return False if inspect.isroutine(obj): return False if type(obj) == types.TypeType: # alternatively inspect.isclass(obj) # class type return False else: return True 

Это немного сложно сказать, что вы хотите, но, возможно, inspect.isclass(val) – это то, что вы ищете?

или

 import inspect inspect.isclass(myclass) 

Вот трюк грязи.

 if str(type(this_object)) == "<type 'instance'>": print "yes it is" else: print "no it isn't" 

Пришлось иметь дело с чем-то подобным в последнее время.

 import inspect class A: pass def func(): pass instance_a = A() def is_object(obj): return inspect.isclass(type(obj)) and not type(obj) == type is_object(A) # False is_object(func) # False is_object(instance_a) # True 
  • объекты метода против объектов-функций, экземпляры класса Python vs class
  • Получить атрибуты для класса и экземпляра в python
  • Синтаксис инициализатора объекта (c #) в python?
  • переменные экземпляра класса python и переменные класса
  • как убить витые экземпляры протокола python
  • SQLAlchemy: изменение отдельного объекта
  • python: создать экземпляр класса в другом классе (с общим примером)
  • Python экземпляры и атрибуты: это ошибка, или я понял, что это совершенно неправильно?
  •  
    Interesting Posts for Van-Lav

    Есть ли функция в python для разбиения слова на список?

    Python побитовое И на несколько номеров, быстрее, чем итеративный побитовый оператор?

    Автоматическая перезагрузка сельдерея при любых изменениях

    Python: чтение файла конфигурации с несколькими строками на ключ

    Проблемы с PySerial: порт должен быть настроен до его использования

    Django / Python unorderable types: complex () <complex () Django tutorial youtube-croach

    Подсчитайте количество максимальных последовательных «а» из строки. Python 3

    Существует ли максимальная длина для условного (if) оператора python?

    Получение хорошего смешивания со многими входными файлами данных в тензорном потоке

    Python и Django IDE с удаленным редактированием?

    Python – родительский поток обрабатывает дочерние потоки Исключение

    : обнаружение аномалий – альтернатива для OneClassSVM

    Сортировка списка классов по алфавиту на основе переменной в классе python 2.7

    Укажите отправителя при отправке почты с помощью Python (smtplib)

    Словарь списков в словарь

    Python - лучший язык программирования в мире.