繁体   English   中英

用于复制CSV文件并另存为XLSX文件的Python脚本

[英]Python Script to copy CSV files and save as XLSX files

我的计算机上的特定文件夹中有一系列的csv文件。 需要编写一个python代码以选择这些CSV文件并将其提取为XLSX到我的驱动器上的另一个指定文件夹中。 在每个文件上,列L,M,N的格式都为日期。 AA和AF列的格式为数字。 其他列可以存储为文本或常规。 这是我陷入的一些代码

from openpyxl import Workbook
import csv


wb = Workbook()
ws = wb.active
with open('test.csv', 'r') as f:
    for row in csv.reader(f):
        ws.append(row)
wb.save('name.xlsx')

使用熊猫,此任务应该非常简单。

import pandas as pd

df = pd.read_csv('test.csv')
df.to_excel('test.xlsx')

您可以通过将字符串更改为适当的文件名来处理任意数量的文件。

编辑

我不确定您是否可以按所需类型进行保存。 您可能可以使用其他软件包甚至熊猫来更改它。 在熊猫中,您可以对系列执行pd.to_dateimepd.to_numeric来更改其类型。 您也可以在导入时指定dtype 希望有帮助!

解决方案应该是这样的

import pandas as pd
import os
dpath = 'path//to//folder'
for filename in os.listdir('dpath'):
    df = pd.read_csv(path + '/' + filename)
    df = df['a':'b'] #select required columns based on your requirement.
    df["a"] = pd.to_numeric(df["a"]) # convert datatype of the column based on your need
    df1.append(df)
    del df

df1.to_excel('test.xlsx')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM