Функция help()
добавляется во встроенное пространство имен с помощью модуля site
, который можно настроить, создав модуль sitecustomize.py
где-то на вашем пути (очевидно, он обычно хранится в пакетах сайта).
Затем в файле sitecustomize.py
вы добавляете любые настройки.
Вы можете справиться с этим двумя способами:
Если вы хотите изменить (кажущееся) поведениеhelp()
сама функция, оберните функцию справки в декораторе, что-то вроде:
def help_wrapper(func):
def inner(*args):
results = func(*args)
return your_cleanup_function_here(results)
help = help_wrapper(help)
Лично я бы предпочел немного другое решение, потому что нет никакой информации о том, что будет делать ваша функция очистки, чтобы помочь вывести это не написано в RestructuredText.
Поэтому я бы просто создал функцию-обертку:
def my_help(*args):
return your_cleanup_function_here(help(*args))
Таким образом, у вас все еще будет доступ к исходной функции help()
, есливам это нужно.
CAVEAT: будьте осторожны при выполнении действий в sitecustomize.py, так как все, что вы здесь делаете, вероятно, повлияет на весь сеанс переводчика (и наканунеry сеанс переводчика), что иногда может привести к непредвиденным последствиям.