如何保存打印语句的输出

how to save the output of a print statement

我只是想将每个for循环的打印语句的输出保存到一个名为test.txt的文本文件中,在文本文件中每个for循环输出应该用>>>符号分隔,加上我想要将 header 作为 'column-a' 放在文本文件的顶部。我尝试的代码如下:

a = ['oof', 'rab', 'zab']
for i in range(1,5):
    for file in a:
        print('>>>')
        data=print(file)
with open(“test.txt”,w) as f: 
f.write(data)

通过执行上面的代码,我得到如下所示

oof
rab
zab
oof
rab
zab
oof
rab
zab
oof
rab
zab

但我需要如下输出 test.txt

column-a
>>> 
oof
rab
zab
>>>
oof
rab
zab
>>>
oof
rab
zab
>>>
oof
rab
zab

我希望我能提前get.Thanks一些解决方案。

您只需要写入文件并打印到屏幕上。请注意,您的代码中还有 UTF-8 "66 & 99" 双引号,而不是简单的 " 个字符。

a = ['oof', 'rab', 'zab']
f = open( "test.txt", "wt" )
for i in range( 1, 5 ):
    for word in a:
        print( word )
        f.write( word + "\n" )
    print( '>>>' )
    f.write( '>>>' + "\n" )
f.close()

            

print语句可用于直接写入带有file关键字参数的打开文件:

items = ['oof', 'rab', 'zab']

with open('file.txt', 'w') as file:

    # header
    print('column-a', file=file)

    # loop with >>> separators
    for i in range(5):
        print('>>>', file=file)

        # print list items
        for item in items:
            print(item, file=file)

以上代码创建了一个 file.txt 文件,其内容为:

column-a
>>>
oof
rab
zab
>>>
oof
rab
zab
>>>
oof
rab
zab
>>>
oof
rab
zab
>>>
oof
rab
zab