有没有办法用python将所有的打印输出保存到一个txt文件中?假设我的代码中有这两行代码,我想将打印输出保存到一个名为output.txt
的文件中。
print ("Hello stackoverflow!")
print ("I have a question.")
我希望output.txt
文件包含
Hello stackoverflow!
I have a question.
发布于 2016-04-12 14:53:12
您可以将标准输出重定向到文件“output.txt”中:
import sys
sys.stdout = open('output.txt','wt')
print ("Hello stackoverflow!")
print ("I have a question.")
发布于 2018-02-11 21:41:38
使用日志记录模块
def init_logging():
rootLogger = logging.getLogger('my_logger')
LOG_DIR = os.getcwd() + '/' + 'logs'
if not os.path.exists(LOG_DIR):
os.makedirs(LOG_DIR)
fileHandler = logging.FileHandler("{0}/{1}.log".format(LOG_DIR, "g2"))
rootLogger.addHandler(fileHandler)
rootLogger.setLevel(logging.DEBUG)
consoleHandler = logging.StreamHandler()
rootLogger.addHandler(consoleHandler)
return rootLogger
获取记录器:
logger = init_logging()
并开始记录/输出(Ing):
logger.debug('Hi! :)')
发布于 2019-05-13 13:33:11
另一种变体可以是..。之后请务必关闭该文件
import sys
file = open('output.txt', 'a')
sys.stdout = file
print("Hello stackoverflow!")
print("I have a question.")
file.close()
https://stackoverflow.com/questions/36571560
复制相似问题