Python批量修改文件后缀

Python批量修改文件名

// An highlighted block
import os
from io import StringIO
import csv
import pandas as pd

c_path = r"G:\1"
x_path = r"G:\1\xlsx"  # 路径中的xls文件在调用to_excel时会自动创建


def csv_to_xls(csv_path, xlsx_path):
    with open(csv_path, 'r', encoding='gb18030', errors='ignore') as f:
        data = f.read()
    data_file = StringIO(data)
    print(data_file)
    csv_reader = csv.reader(data_file)
    list_csv = []
    for row in csv_reader:
        list_csv.append(row)
    df_csv = pd.DataFrame(list_csv).applymap(str)
    '''
    这部分是不将csv装换为xls,而是过滤后再写入csv文件
    df_csv = df_csv[(df_csv[4] == '') | (df_csv[4] == 'name')]      # 过滤出第四列包含空值和name的数据
    df_csv.to_csv(csv_path, index=0, header=0, encoding='gb18030')  # 写入csv文件中
    '''
    writer = pd.ExcelWriter(xlsx_path)
    # 写入Excel
    df_csv.to_excel(
        excel_writer=writer,
        index=False,
        header=False
    )

    writer.save()
    # 删除csv文件
    # os.remove(c_path)

def solve(c_path):
    files_list = []
    files = os.listdir(c_path)
    for f in files:
        if os.path.isfile(c_path + '/' + f) and f[2] == 'c':
            files_list.append(f)
    for fl in files_list:
        print(fl)
        xl = '.xlsx'
        csv_to_xls(c_path + '/' + fl, x_path + '/' + fl[0] + xl)
    print("总文件数 = ", len(files_list))


if __name__ == '__main__':
    solve(c_path)

生成结果

在这里插入图片描述

执行代码前

在这里插入图片描述

执行代码后

在这里插入图片描述

QAQ

猜你喜欢

转载自blog.csdn.net/woshi222B/article/details/109076889
今日推荐