PolkovnikZ
@PolkovnikZ
PHP, Java-script, ajax,html,css

Python — Как получить текст справки help() в переменную?

Как получить текст в переменную a ?
import random
a= help(random.sample)
print(a) # - сейчас None
  • Вопрос задан
  • 1345 просмотров
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
a = random.sample.__doc__

UPDATE:
Мне стало любопытно, как можно перехватить вывод, и я нашёл решение:
from io import StringIO
import random
import sys

class OutputInterceptor(list):
    def __enter__(self):
        self._stdout = sys.stdout
        sys.stdout = self._stringio = StringIO()
        return self

    def __exit__(self, *args):
        self.extend(self._stringio.getvalue().splitlines())
        del self._stringio
        sys.stdout = self._stdout

with OutputInterceptor() as output:
    help(random.sample)

print('\n'.join(output))
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
PolkovnikZ
@PolkovnikZ Автор вопроса
PHP, Java-script, ajax,html,css
Браво!!!! Я подозревал что это можно сделать в python -c подключением sys :-)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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