手把手教你利用Python輕松拆分Excel為多個CSV文件
一、前言
在日常生活或者工作中的時候,我們偶爾會遇到這樣一種讓人頭大的情況——當單個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代碼就能實現,好玩吧。