当使用inplace=True时,如何在控制台上打印



使用for line in fileinput.input(file, inplace=True)时,任何print命令都将在文本文件中打印,而不是在控制台上打印。但是我想使用print进行调试。那么如何在for line in fileinput.input(file, inplace=True)之后实现打印到控制台上呢?

fileinput.inputinplace=True参数有效地将标准输出重定向到正在读取的文件。您可以使用file关键字参数指定一个不同的文件以与print一起写入。

import sys
import fileinput

for line in fileinput.input(file, inplace=True):
print("new content")
print("debugging", file=sys.stderr)

如果你从开始

a
b
c

那么你的文件将看起来像

a
new content
b
new content
c
new content

在这个循环运行之后,你会看到

debugging
debugging
debugging

写入标准错误。

最新更新