Скажем, у меня есть класс «NumberStore»Как вернуть определение класса в python?
class NumberStore(object):
def __init__(self, num):
self.num = num
def get(self):
return self.num
И в дальнейшем, с целью сериализации, я хочу, чтобы напечатать определение класса, либо в точности, как указано, или что то же самое сказал. Есть ли способ в python получить доступ к определению класса, как в идеализированном примере ниже?
>>> NumberStore.print_class_definition()
"class NumberStore(object):\n def __init__(self, num):\n self.num = num\n \n def get(self):\n return self.num"
Обратите внимание, что все вдоль этих линий не получится для классов, определенных с помощью свободных переменных. Самый простой пример - это параметр по умолчанию, например def def (x = CONSTANT): ... ', но он также включает в себя декораторы (хотя многие общие декораторы встроены и, следовательно, почти универсально доступны). – delnan