想从指定路径的文件里提取批量csv文档里指定数据并对应csv文件名生成每条数据放在新的excel中

想从指定路径的文件里提取批量csv文档里指定数据,并对应csv文件名生成每条数据放在新的excel中

该回答引用GPT:
可以使用Python来实现从指定路径的文件中提取批量csv文档里指定数据,并对应csv文件名生成每条数据放在新的excel中的功能。

import csv
import os
import xlwt

# 定义要提取的csv文件路径
csv_path = './csv_files'

# 定义要生成的excel文件路径
excel_path = './excel_files'

# 创建excel文件
workbook = xlwt.Workbook()

# 遍历csv文件
for file in os.listdir(csv_path):
    # 判断是否为csv文件
    if file.endswith('.csv'):
        # 读取csv文件
        with open(os.path.join(csv_path, file), 'r') as f:
            reader = csv.reader(f)
            # 创建excel表格
            sheet = workbook.add_sheet(file.split('.')[0])
            # 遍历csv文件中的每一行
            for i, row in enumerate(reader):
                # 遍历每一行中的每一列
                for j, col in enumerate(row):
                    # 将每一列的数据写入excel表格
                    sheet.write(i, j, col)

# 保存excel文件
workbook.save(os.path.join(excel_path, 'result.xls'))

如还有疑问,可留言帮助解决。

  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/696213
  • 你也可以参考下这篇文章:excel打开csv 出现乱码怎么解决 逗号分隔
  • 除此之外, 这篇博客: excel文件批量转换格式为csv文件,并合并成一个csv中的 三、csv文件批量转换格式为excel文件 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • Sub SaveToXLSX()
        Dim fDir As String
        Dim wB As Workbook
        Dim wS As Worksheet
        Dim fPath As String
        Dim sPath As String
        fPath = "X:\csv文件目录\"
        sPath = "X:\excel文件保存目录\"
        fDir = Dir(fPath)
        Do While (fDir <> "")
            If Right(fDir, 4) = ".csv" Or Right(fDir, 5) = ".csv" Then
                On Error Resume Next
                Set wB = Workbooks.Open(fPath & fDir)
                'MsgBox (wB.Name)
                For Each wS In wB.Sheets
                    wS.SaveAs sPath & wB.Name & ".xlsx" _
                    , FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
                Next wS
                wB.Close False
                Set wB = Nothing
            End If
            fDir = Dir
            On Error GoTo 0
        Loop
    End Sub