将python输出打印到txt文档

时间:2019-11-12 20:56:55

标签: python

我在将python输出打印到txt文件时遇到了一些问题。我目前正在这样运行脚本:

import glob
import pandas as pd

files = glob.glob('*.txt')
result = pd.DataFrame()
for file in files:
    df = pd.read_csv(file,delimiter='  ')
    current_col = df.columns[0]
    df.reset_index(inplace=True)
    df.set_index(current_col,inplace=True)
    df.index.name = 'index'
    df.rename(columns={'index':current_col}, inplace=True)
    result = pd.concat([result,df],axis=1)

然后,我最终获得了所需的输出:

>>> result
>>> result.fillna(0) 

但是我想将这些结果打印到txt文件中。我目前正在使用python v3.7.4的Mac上的终端中运行这些命令。我尝试打开一个文本文件并将结果写入该文本文件,但没有成功:

import glob
import pandas as pd
file = open('counts.txt','w')
files = glob.glob('*.txt')
#eg: files = ['1.txt','2.txt']
result = pd.DataFrame()
for file in files:
    df = pd.read_csv(file,delimiter='  ')
    current_col = df.columns[0]
    df.reset_index(inplace=True)
    df.set_index(current_col,inplace=True)
    df.index.name = 'index'
    df.rename(columns={'index':current_col}, inplace=True)
    result = pd.concat([result,df],axis=1)
file.write(result +'\n')

1 个答案:

答案 0 :(得分:1)

构建完result后,只需将其放在打印语句中,如下所示:

print(result)

然后您可以像这样运行文件:

$ python your_script.py >> /path/for_output_file.txt

它将所有打印语句重定向到指定文件。

如果您使用单个运算符>,它将覆盖结果。因此,请使用>>进行追加。