Как я выполняю самоанализ на объекте в Python 2.x?

Я нашел, что это решение работает для меня. Просто вызовите функцию javascript, как это: action = "javascript: myFunction ();" Тогда у вас есть проверка html5 ... очень просто: -)

24
задан Nicolas Dumazet 4 June 2009 в 20:16
поделиться

5 ответов

Хорошо... Ваша первая остановка будет простым dir (объект). Это покажет Вам участников всего объекта, и поля и методы. Попробуйте его в интерактивной оболочке Python и игре вокруг немного.

, Например:

> class Foo:
   def __init__(self):
    self.a = "bar"
    self.b = 4711

> a=Foo()
> dir(a)
['__doc__', '__init__', '__module__', 'a', 'b']
25
ответ дан unwind 28 November 2019 в 23:32
поделиться

Как насчет чего-то как:

>>> o=object()
>>> [(a,type(o.__getattribute__(a))) for a in dir(o)]
[('__class__', <type 'type'>), ('__delattr__', <type 'method-wrapper'>), 
('__doc__', <type 'str'>), ('__format__', <type 'builtin_function_or_method'>),
('__getattribute__', <type 'method-wrapper'>), ('__hash__', <type 'method-wrapper'>),
('__init__', <type 'method-wrapper'>), 
('__new__', <type 'builtin_function_or_method'>),
('__reduce__', <type 'builtin_function_or_method'>),
('__reduce_ex__', <type 'builtin_function_or_method'>),
('__repr__', <type 'method-wrapper'>), ('__setattr__', <type 'method-wrapper'>),
('__sizeof__', <type 'builtin_function_or_method'>),
('__str__', <type 'method-wrapper'>),
('__subclasshook__', <type 'builtin_function_or_method'>)]
>>> 

А более структурированный метод должен будет использовать эти , осматривают модуль :

осмотреть модуль обеспечивает несколько полезных функций, чтобы помочь получить информацию о живых объектах, таких как модули, классы, методы, функции, tracebacks, объекты кадра и объекты кода. Например, это может помочь Вам исследовать содержание класса, получить исходный код метода, извлечения и отформатировать список аргументов для функции или получить всю информацию, необходимо отобразить подробный traceback.

9
ответ дан gimel 28 November 2019 в 23:32
поделиться

" Руководство по самоанализу Python " является хорошей статьей для запущения Вас.

5
ответ дан Michael Ekoka 28 November 2019 в 23:32
поделиться

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

4
ответ дан the Tin Man 28 November 2019 в 23:32
поделиться

Если Вы используете win32com.client. Отправка, осматривая объект Python не могла бы быть большим количеством справки, поскольку это - универсальная обертка для IDispatch.

можно использовать makepy (который идет Activestate Python ) генерировать обертку Python от библиотеки типов. Затем можно посмотреть на код для обертки.

0
ответ дан the Tin Man 28 November 2019 в 23:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: