csv批量转为excel

发布时间 2023-05-08 12:04:10作者: 不同凡响的太阳

一个需求,代码如下:

import pandas as pd
import os


class C_to_EXC:

    @staticmethod
    def mkdir_folder():
        """创建保存excel的文件夹"""
        folder_name = "处理的excel"
        if not os.path.exists(folder_name):
            os.mkdir(folder_name)

    def __bianli(self):
        """遍历csv文件"""
        # 指定要遍历的目录
        directory = r'C:\Users\43701\Desktop\测试\旧的csv'

        # 获取目录下的所有文件名
        file_names = os.listdir(directory)

        # 遍历文件名列表
        for file_name in file_names:
            yield file_name.strip('.csv')

    def to_excel(self):
        """  将csv转化为excel"""
        for i in self.__bianli():
            try:
                # 读取CSV文件并将其存储为DataFrame对象
                df = pd.read_csv(f'{i}.csv')
                # 将DataFrame对象写入Excel文件
                df.to_excel(rf'C:\Users\43701\Desktop\测试\新的excel\{i}.xlsx', index=False)
                print(f'{i}.excel保存完毕')
            except Exception as e:
                print(f"{i}csv格式需为utf-8--->", e)

    def deal_data(self):
        """对excel文件过滤处理  不想写 自己写"""
        # 读取Excel文件并将其存储为DataFrame对象
        df = pd.read_excel('filename.xlsx')

        # 遍历DataFrame对象的每一行数据
        for index, row in df.iterrows():
            # 对每一行数据进行操作
            # print(row['列名1'], row['列名2'], ...)
            print(row)


fire = C_to_EXC()
fire.to_excel()