Как я могу перечислить методы в модуле Python 2.5?

то, Которое, не только является ужасным и медленным, кажется неуклюжим.

могут потребоваться некоторые привыкающие к, но это - pythonic способ сделать его. Как был уже указан, альтернативы хуже. Но существует еще одно преимущество выполнения вещей этот путь: полиморфизм.

центральная идея позади утиного ввода состоит в том, что, "если он идет и говорит как утка, затем это - утка". Что, если Вы решаете, что необходимо разделить строку на подклассы так, чтобы можно было измениться, как Вы определяете, может ли что-то быть преобразовано в плавание? Или что, если Вы решаете протестировать некоторый другой объект полностью? Можно сделать эти вещи, не имея необходимость изменять вышеупомянутый код.

Другие языки решают эти проблемы при помощи интерфейсов. Я сохраню анализ, которого решение лучше для другого потока. Точка, тем не менее, - то, что Python находится решительно на утке, вводящей сторону уравнения, и Вы, вероятно, оказываетесь перед необходимостью привыкать к синтаксису как это, если Вы планируете выполнение большого программирования в Python (но это не означает, что необходимо понравиться он, конечно).

Еще одна вещь Вы могли бы хотеть учесть: Python довольно быстр в броске и ловле исключений по сравнению с большим количеством других языков (30x быстрее, чем .NET, например). Heck, сам язык даже выдает исключения для передачи неисключительных, нормальных условий программы (каждый раз, когда Вы используете для цикла). Таким образом я не волновался бы слишком много об аспектах производительности этого кода, пока Вы не замечаете значительной проблемы.

26
задан Randall Cook 23 April 2012 в 18:45
поделиться

4 ответа

Вот некоторые вещи, которые вы можете сделать по крайней мере:

import module

print dir(module) # Find functions of interest.

# For each function of interest:
help(module.interesting_function)
print module.interesting_function.func_defaults
56
ответ дан 28 November 2019 в 06:17
поделиться

Марк Пилигрим глава 4 , о которой вы упомянули, действительно отлично подходит для Python 2.5 (и любой другой недавней версии 2. * , спасибо к обратной совместимости). Марк не упоминает help , но я вижу, что есть другие ответы.

Один ключевой бит, о котором никто (включая Марка ;-), похоже, не упомянул, - это inspect , отличный модуль в стандартной библиотеке Python, которая действительно помогает в продвинутом самоанализе.

12
ответ дан 28 November 2019 в 06:17
поделиться

Это тоже неплохо:

import module
help(module)

Он напечатает строку документации для модуля, затем выведет список содержимого модуля, а также их строки документации.

7
ответ дан 28 November 2019 в 06:17
поделиться

Функция dir () показывает все элементы, которые есть в модуле.

4
ответ дан 28 November 2019 в 06:17
поделиться
Другие вопросы по тегам:

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