手把手教你利用Python轻松拆分Excel为多个CSV文件

上一篇 / 下一篇  2021-02-23 11:31:10

  一、前言
  在日常生活或者工作中的时候,我们偶尔会遇到这样一种让人头大的情况——当单个Excel文件较大或需要根据某一列的内容需要拆分为多个CSV文件时,用Excel的筛选功能去慢慢筛选虽然可行,但是来回反复倒腾工作量就比较大了。不过小伙伴们不用惊慌,其实这个情况我们只需要用Python几行代码就能实现!一起来看看吧~
  二、项目目标
  将单个Excel文件拆分为多个CSV文件或根据某一列的内容拆分为多个CSV文件。
  三、项目准备
  软件:PyCharm
  需要的库:tkinter, pandas,xlrd
  四、项目分析
  1)如何选择目标文件?
  利用tkinter库中的filedialog,进行要处理的目标文件选择。
  2)如何读取Excel文件?
  利用xlrd库进行Excel读取,获取要处理的目标Sheet。
  3)如何筛选列内容?
  利用pandas库进行列内容的筛选处理,得到拆分后的数据。
  4)如何保存文件?
  利用to_csv()保存数据,得到最终拆分后的目标文件。
  五、项目实现
  1、第一步导入需要的库
  from tkinter import filedialog 
  import pandas as pd 
  import xlrd 
  2、第二步选择目标文件
  path = filedialog.askopenfilename().replace('/', '\\') 
  first_file_fh=xlrd.open_workbook(path) 
  # 选择要拆分的文件 
  first_file_sheet=first_file_fh.sheets() 
  3、第三步读取Excel文件
  for sheetname in first_file_sheet: 
        sheet_names.append(sheetname.name) 
    df = pd.read_excel(path, sheet_name=sheet_names[0]) 
  4、第四步根据某列的内容进行筛选并保存
  for c in list_c: 
       # 根据列的内容循环读取 
       df2=df[df['地市']==c] 
       # 根据列的内容进行筛选 
       df2.to_CSV('./excel_CSV/auto_ok/32_'+c+'.CSV', encoding='gbk',index=None) 
       # 筛选后的内容保存为CSV 
  六、效果展示
  1、处理前Excel数据:
  2、最终拆分后CSV文件保存结果:
   
  七、总结
  本文介绍了如何利用Python对Excel文件进行拆分处理,实现可以根据任意列的内容进行拆分。轻轻松松几行Python代码就能实现,好玩吧。

参与调查问卷,赢取测试好礼!
识别下方二维码或点击链接
成功提交后免费获得资料和课程
更有抽奖好礼等着你



TAG: 软件开发 Python

 

评分:0

我来说两句

Open Toolbar