将.txt数据保存在excel工作表中



我想从.txt文件中提取数据,并将其存储在excel工作表中。它似乎可以工作,但脚本并没有保存所有数据。这是我的代码:

def save_excel(filename, date, item, price, counter):

workbook = xlsxwriter.Workbook('Ausgabenliste.xlsx')
worksheet = workbook.add_worksheet(filename)
#write header
worksheet.write(0, 0, "Datum")     
worksheet.write(0, 1, "Einkauf")     
worksheet.write(0, 2, "Preis")  
worksheet.write(counter, 0, date)    
worksheet.write(counter, 1, item)  
worksheet.write(counter, 2, price) 
workbook.close()   
with open (filename) as f:
lines = f.readlines()
print(lines)
counter = 1

for line in lines:
l=line.split()
a = l [-3]
b = l [-2]
c = l [-1]
"""print(l)
print(a)
print(b)
print(c)
print(counter)"""
save_excel(filename,a, b, c, counter)
counter += 1

.txt文件包含以下信息:

02.09.2020 Pizza 1,50
02.09.2020 Pizza 1,50
02.09.2020 Nussschnecke 2,05
02.09.2020 jlkjlsdf 546

输出如下:

在此处输入图像描述

这完全是个愚蠢的问题。我只是不明白为什么中间的信息会丢失。

非常感谢。

使用pandas:可以很容易地实现这一点

import pandas as pd
df = pd.read_csv(filename, sep=" ", columns = ['Datum','Einkauf', 'Preis'])
df.to_excel('Ausgabenliste.xlsx', sheet_name=filename,index=False)

最新更新