Ответ 1
Вот некоторые вещи, которые вы можете сделать как минимум:
import module
print dir(module) # Find functions of interest.
# For each function of interest:
help(module.interesting_function)
print module.interesting_function.func_defaults
Я пытаюсь использовать библиотеку Python, написанную на C, которая не имеет никакой документации. Я хочу использовать интроспекцию, чтобы хотя бы увидеть, какие методы и классы находятся в модулях. У кого-нибудь есть функция или библиотека, которую я могу использовать для перечисления функций (с списками аргументов) и классов (с методами и переменными-членами) внутри модуля?
Я нашел эту статью об интроспекции Python, но я уверен, что это не относится к Python 2.5. Спасибо за помощь.
Вот некоторые вещи, которые вы можете сделать как минимум:
import module
print dir(module) # Find functions of interest.
# For each function of interest:
help(module.interesting_function)
print module.interesting_function.func_defaults
Mark Pilgrim глава 4, о котором вы упоминаете, действительно применима только к Python 2.5 (и любой другой последней версии 2.*
благодаря обратной совместимости). Марк не упоминает help
, но я вижу другие ответы.
Один ключевой бит, который никто не упоминает (включая Mark;-), - это inspect, отличный модуль в стандартной библиотеке Python что действительно помогает с расширенной интроспекцией.
Просто это тоже хорошо:
import module
help(module)
Он напечатает docstring для модуля, затем перечислит содержимое модуля, также распечатает свои док-строки.
Функции dir() показывают всех членов, которые имеет модуль.