Я хотел бы каким-то образом добавить print()
в строку или внутренний буфер вместо stdout в Python.Внутренний буферизованный вывод Python
В идеале, я мог бы напечатать это, а затем вывести строку на консоль так, как если бы она была напечатана на stdout для начала. Что-то вроде:
>>> print("output 1", a)
>>> print("output 2", a)
>>> print(a)
output 1
output 2
Если вам интересно, что я делаю это ради быстрого рефакторинга на код, который ранее напечатанной непосредственно на консоль.
Вы хотите использовать печать, чтобы сохранить ее в переменной вместо отображения ее на консоль ??? – Hackaholic
Вы хотите перенаправить 'stdout'. См. Это сообщение http://stackoverflow.com/questions/1218933/can-i-redirect-the-stdout-in-python-into-some-sort-of-string-buffer – Cfreak
Вы также можете просто использовать обычный файл и искать перед печатью без необходимости импорта –