在Python 2.5中将CSV文件内容粘贴到Excel表格中
基本上,我有一个xlsm文档,它里面有一个叫“data”的表格和一个图表,这个图表是根据数据生成的。
我有5个CSV文件。
我需要清空“data”表格的内容,然后用这5个CSV文件填充它。
有没有办法可以做到这一点,而不需要把我的CSV文件放进一个数组里,然后一行一行地写入(这会非常耗时)。
我能不能直接打开我的CSV文件,然后把它们粘贴到“data”表格里?
谢谢!
1 个回答
2
你可以直接在Excel中打开CSV文件,而且你还可以把多个CSV文件合并成一个更大的文件,方法是使用
my_files = ['file_1.csv', 'file_2.csv', 'file_3.csv', 'file_4.csv', 'file_5.csv']
with open('output.csv', 'w') as oo:
for file in my_files:
with open(file, 'r') as io:
oo.write(io.readlines())
然后你可以在Excel中打开output.csv
。
如果你不想手动列出所有的输入文件,可以使用glob
。
>>> my_files = glob.glob('file_*.csv')
>>> my_files
... ['file_1.csv', 'file_2.csv', 'file_3.csv', 'file_4.csv', 'file_5.csv']
其实还有一个可以读写Excel文件的Python模块,详细信息可以在这里找到。你可以用它直接写入Excel文件:
import xlwt
w = xlwt.Workbook()
ws = w.add_sheet('First sheet')
i = 0
for file in my_files:
with open(file, 'r') as fo:
for line in fo.readlines():
for j, col in enumerate(line.split(',')):
ws.write(i, j, col)
i += 1