Как получить список атрибутов класса в Python
Модуль проверки предоставляет несколько полезных функций, помогающих получать информацию о живых объектах, таких как модули, классы, методы, функции, трассировки, объекты фрейма и объекты кода. Метод getmembers (object) возвращает все члены объекта в списке пар (имя, значение), отсортированных по имени.
Пример
import inspect
class ClassAttrTest(object):
myVar_1 = '100'
myVar_2 = '200'
def myfunc(self):
return self.myVar_1
print(inspect.getmembers(ClassAttrTest, lambda myVar_1:not(inspect.isroutine(myVar_1))))
Выход
[('__class__', < class 'type' > ), ('__dict__', mappingproxy({'__weakref__': < attri
bute '__weakref__' of 'ClassAttrTest' objects > , '__module__': '__main__', '__doc
__': None, 'myfunc': < function ClassAttrTest.myfunc at 0x0000000002E26F28 > , '__d
ict__': < attribute '__dict__' of 'ClassAttrTest' objects > , 'myVar_1': '100', 'my
Var_2': '200'})), ('__doc__', None), ('__module__', '__main__'), ('__weakref__',
< attribute '__weakref__' of 'ClassAttrTest' objects > ), ('myVar_1', '100'), ('my
Var_2', '200')]
