使用Python将日志文件转换为csv文件

使用Python将日志文件转换为csv文件,python,csv,Python,Csv,我在工作中遇到以下问题-我需要获取一个日志文件,其中的项目安排如下: A1 B1 C1 A2 B2 C2 . . . An Bn Cn 我需要一个完整的csv文件,如下所示: A1,B1,C1 A2,B2,C2 A3,B3,C3 ... An,Bn,Cn 如何使用python脚本实现这一点 编辑:实际上,格式是按以下方式写出的- Voltage: A1 Current: B1 Power: C1 如何将其转换为- Voltage, Current, Power A1,B1,C1 使用nu

我在工作中遇到以下问题-我需要获取一个日志文件,其中的项目安排如下:

A1
B1
C1
A2
B2
C2
.
.
.
An
Bn
Cn
我需要一个完整的csv文件,如下所示:

A1,B1,C1
A2,B2,C2
A3,B3,C3
...
An,Bn,Cn
如何使用python脚本实现这一点

编辑:实际上,格式是按以下方式写出的-

Voltage: A1
Current: B1
Power: C1
如何将其转换为-

Voltage, Current, Power
A1,B1,C1

使用numpy的简单解决方案:

import numpy as np

data = np.genfromtxt("d.csv", dtype=str)
data = np.reshape(data, (3,-1))
np.savetxt('data.csv', data, delimiter=',', fmt="%s")
结果:

A1,B1,C1
A2,B2,C2
An,Bn,Cn
如果您没有使用numpy,请发布一些您尝试过的代码

import csv

with open('myfile.log') as file:
    lines = file.read().splitlines()
    lines = [lines[x:x+3] for x in range(0, len(lines), 3)]

    with open('yourcsv.csv', 'w+') as csvfile:
        w = csv.writer(csvfile)
        w.writerows(lines)

请注意,点仍然存在,它们将被视为值(因此它们也将被逗号分隔)

您尝试了什么?发布您编写的任何代码。大概是你的公司在付钱给你,所以你应该展示你为解决这个问题所做的努力。如果格式与您编写的完全相同,则只需从文件的最后一行找到
n
的值,然后创建csv文件:无需查看日志文件的其余部分。还是有什么你没有包括在内的?