【问题标题】:Copy .csv files into a .xlsx workbook using python使用 python 将 .csv 文件复制到 .xlsx 工作簿中
【发布时间】:2016-04-15 09:58:14
【问题描述】:

我进行了广泛的研究,但未能找到适合我需要的解决方案。

我有生成多个 .csv 文件的 python 脚本。

每个 .csv 文件只有 A 列和 B 列中的数据。

每个 .csv 文件都有一个唯一的名称,我正在尝试研究如何根据其名称将 .csv 文件复制到现有的 excel 工作簿中,复制到同名的特定选项卡/工作表中。

.csv 文件将始终位于同一文件夹中。

理想情况下,我希望使用 python 来完成这项任务。

【问题讨论】:

标签: python excel python-2.7 csv macros


【解决方案1】:

你可以试试这样的

import os
import glob
import csv
from xlsxwriter.workbook import Workbook
workbook = Workbook('Existing.xlsx')

for csvfile in glob.glob(os.path.join('.', '*.csv')):
    worksheet = workbook.add_worksheet(os.path.splitext(csvfile)[0]) # worksheet with csv file name
    with open(csvfile, 'rb') as f:
        reader = csv.reader(f)
        for r, row in enumerate(reader):
            for c, col in enumerate(row):
                worksheet.write(r, c, col) # write the csv file content into it
 workbook.close()

【讨论】:

  • 谢谢您,非常感谢您花时间回答此查询以及提供的示例代码。一旦我使用了这个例子,我会做出进一步的回应。再次感谢!
  • @rajarshi Das 我正在尝试按照您的操作进行操作,但由于某种原因,我收到以下错误消息:Invalid Excel character '[]:*?/\' in sheetname您知道为什么会发生这种情况吗?谢谢
  • @newbie 这可能意味着您的 csv 文件的标题中有以下符号之一:'[]:*?/\'
【解决方案2】:

使用模块 csv 从 csv 文件中读取数据 并推荐使用 XlsxWriter 编写 .xlsx(https://pypi.python.org/pypi/XlsxWriter)

【讨论】:

  • 感谢您的回复。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-07-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多