Bad-Coder
@Bad-Coder
Вчера выпустился из детского садика!

Как получить output из функции без return?

Пример:
def hello():
    print('HeLlO')

def output(func):
   #CODE

print(output(hello))
# >>> HeLlo


Как сделать эту функцию?
  • Вопрос задан
  • 90 просмотров
Решения вопроса 1
deepblack
@deepblack Куратор тега Python
Как получить output из функции без return?
Оно должно возвращать а не выводить.

Научись нормально излагать задачу.

from contextlib import redirect_stdout
import io


def hello():
    print('HeLlO')


def output(func):
    f = io.StringIO()
    with redirect_stdout(f):
        func()
    return f.getvalue()


print(output(hello))


P.S. Можешь немного подумать и написать декоратор.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@dmtrrr
Backend developer
def output(func):
    func()
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы