我使用eval()
我需要打印输出。例如,eval('1+1')
将返回2,但eval('print('hello')')
将返回None
。如何存储Python Shell的输出?
答案 0 :(得分:0)
如果您确实要将标准输出重定向到变量,请将StringIO用于变量或使用文件
from io import StringIO
# from StringIO import StringIO -- python 2.x
import sys
my_out = StringIO()
sys.stdout = my_out
print("hello") # now stored in my_out
或
my_file = open('my_file.txt', 'w')
sys.stdout = my_file
print("hello") # now written to my_file.txt