我如何创建具有多个工作表的excel文件,这些工作表使用python存储文本文件的内容

问题描述 投票:0回答:1

我需要创建一个excel文件,每张纸都包含目录中文本文件的内容,例如,如果我有两个文本文件,那么我将有两张纸,并且每张纸都包含文本文件的内容。我已经设法创建了excel文件,但是我只能用目录中最后一个文本文件的内容填充它,但是,我需要阅读所有文本文件并将它们保存到excel中。

到目前为止,这是我的代码:

import os
import glob
import xlsxwriter


file_name='WriteExcel.xlsx'
path = 'C:/Users/khouloud.ayari/Desktop/khouloud/python/Readfiles'

txtCounter = len(glob.glob1(path,"*.txt"))


for filename in glob.glob(os.path.join(path, '*.txt')):
    f = open(filename, 'r')
    content = f.read()
    print (len(content))

    workbook = xlsxwriter.Workbook(file_name) 
    ws = workbook.add_worksheet("sheet" + str(i))
    ws.set_column(0, 1, 30)
    ws.set_column(1, 2, 25)

    parametres = ( 
        ['file', content],
    ) 
    # Start from the first cell. Rows and 
    # columns are zero indexed. 
    row = 0
    col = 0

    # Iterate over the data and write it out row by row. 
    for name, parametres in (parametres): 
        ws.write(row, col, name) 
        ws.write(row, col + 1, parametres) 
        row += 1

    workbook.close()

例如:如果我有两个文本文件,则第一个文件的内容为“ hello”,第二个文本文件的内容为“ world”,在这种情况下,我需要创建两个工作表,第一个工作表需要存储“ hello”,并且第二个工作表需要存储“世界”。但我的两个工作表都包含“世界”。

excel python-3.x file xlsxwriter
1个回答
0
投票

我建议使用pandas。反过来,它使用xlsxwriter将数据(整个表)写入excel文件,但是却变得更加容易-只需几行代码即可。

© www.soinside.com 2019 - 2024. All rights reserved.