Python:将文本解析输出重定向到CSV文件

时间:2013-10-30 15:09:22

标签: python csv

我想编写一个简单的脚本来解析我的文本文件。 模式如下:

0.061024 seconds for Process 0 to send.
0.060062 seconds for Process 1 to receive.

这是一个循环。

python文件如下所示:

import fileinput, csv

data = []
for line in fileinput.input():
    time, sep, status = line.partition("seconds")
    if sep:
    print(time.strip())
with open('result.csv', 'w') as f:
w = csv.writer(f)
w.writerow('send receive'.split())
w.writerows(data)

这为我提供了bash上所需的输出,并且还创建了两个包含发送和接收的列。如何用

打印的输入填充它们
print(time.strip())

我希望将此输出放在两列中的CSV文件中。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

您可以使用csv模块附带的writer功能:

import csv
with open('file.csv', 'wb') as csvfile:
    cwriter = csv.writer(csvfile, delimiter=' ',
                            quotechar='|', quoting=csv.QUOTE_MINIMAL)
    for var in list_of_values:
        cwriter.writerow(var)

考虑到这一点,您将所有行作为list_of_values中的单独列表,如:

list_of_values = [['col1', 'col2'],['col1', 'col2']]