python 通过使用pandas的实现的Excel的批量转换CSV文件的处理
程序员文章站
2022-06-23 23:11:01
最近同事在处理文件导入的时候需要把一批文件换成CSV的格式,但是直觉修改后缀是不生效的,而且xlsx和xls的文件没法直接换成CVS的文件,所以找了一下方式,并且自己实现了python的转换方式。代码如下 文件需要导入pandas 还要引入xlrd 代码是基于python3.6的环境。 ......
最近同事在处理文件导入的时候需要把一批文件换成csv的格式,但是直觉修改后缀是不生效的,而且xlsx和xls的文件没法直接换成cvs的文件,所以找了一下方式,并且自己实现了python的转换方式。代码如下
文件需要导入pandas 还要引入xlrd
代码是基于python3.6的环境。
import pandas as pd
import os
# 读取一个目录里面的所有文件:
def read_path(path):
dirs = os.listdir(path)
return dirs
def getpath(dir):
# pwd = os.getcwd()
# father_path=os.path.abspath(os.path.dirname(pwd)+os.path.sep+".")
file_path = '/users/xxxx/desktop'#桌面路径地址,地址可以根据自己需要修改
full_path=file_path+'/'+dir+'/'
return full_path
#数据源excel如果有多个sheet,那么则需要一一遍历输出
def xlsdata_to_csv(xlsx_data,tag_path):
for k, v in xlsx_data.items():
tag_file = tag_path + k + '.csv'
if not v.empty:
v.to_csv(tag_file, encoding='utf_8_sig')
def main():
source_path = getpath('test2')#存放excel文件
tag_path = getpath('test3')#输出csv的文件
dir = read_path(source_path)
for i in dir :
source_file = source_path+i
xlsx_data = pd.read_excel(source_file, sheet_name=none)
csv_path = tag_path+i.split('.x')[0]#因为文件包含两个.所以分割时候做了特殊处理
xlsdata_to_csv(xlsx_data,csv_path)
if __name__ == '__main__':
main()
上一篇: python基础#1
下一篇: 重温面向对象核心 上
推荐阅读
-
Python 通过SFTP 实现文件的批量上传
-
Python使用pandas处理CSV文件的实例讲解
-
使用pandas模块读取csv文件和excel表格,并用matplotlib画图的方法
-
python整合ffmpeg实现视频文件的批量转换
-
python实现将html表格转换成CSV文件的方法
-
使用python的pandas库读取csv文件保存至mysql数据库
-
Windows下Python使用Pandas模块操作Excel文件的教程
-
使用python批量化音乐文件格式转换的实例
-
Python Pandas批量读取csv文件到dataframe的方法
-
『Word2007技术』通过使用默认的文件格式实现文档处理自动化