python将excel转换为csv的代码方法总结
Python / 管理员 发布于 7年前 235
import pandas as pddata = pd.read_excel('123.xls','Sheet1',index_col=0)data.to_csv('data.csv',encoding='utf-8')
#!/usr/bin/env python __author__ = "lrtao2010"'''Excel文件转csv文件脚本需要将该脚本直接放到要转换的Excel文件同级目录下支持xlsx 和 xls 格式在同级目录下生成名为excel_to_csv.csv 的文件,采用UTF-8编码'''import xlrdimport csvimport os#生成的csv文件名csv_file_name = 'excel_to_csv.csv'def get_excel_list(): #获取Excel文件列表 excel_file_list = [] file_list = os.listdir(os.getcwd()) for file_name in file_list: if file_name.endswith('xlsx') or file_name.endswith('xls'): excel_file_list.append(file_name) return excel_file_listdef get_excel_header(excel_name_for_header): #获取表头,并将表头全部变为小写 workbook = xlrd.open_workbook(excel_name_for_header) table = workbook.sheet_by_index(0) #row_value = table.row_values(0) row_value = [i.lower() for i in table.row_values(0)] return row_valuedef read_excel(excel_name): #读取Excel文件每一行内容到一个列表中 workbook = xlrd.open_workbook(excel_name) table = workbook.sheet_by_index(0) #读取第一个sheet nrows = table.nrows ncols = table.ncols # 跳过表头,从第一行数据开始读 for rows_read in range(1,nrows): #每行的所有单元格内容组成一个列表 row_value = [] for cols_read in range(ncols): #获取单元格数据类型 ctype = table.cell(rows_read, cols_read).ctype #获取单元格数据 nu_str = table.cell(rows_read, cols_read).value #判断返回类型 # 0 empty,1 string, 2 number(都是浮点), 3 date, 4 boolean, 5 error #是2(浮点数)的要改为int if ctype == 2: nu_str = int(nu_str) row_value.append(nu_str) yield row_valuedef xlsx_to_csv(csv_file_name,row_value): #生成csv文件 with open(csv_file_name, 'a', encoding='utf-8',newline='') as f: #newline=''不加会多空行 write = csv.writer(f) write.writerow(row_value)if __name__ == '__main__': #获取Excel列表 excel_list = get_excel_list() #获取Excel表头并生成csv文件标题 xlsx_to_csv(csv_file_name,get_excel_header(excel_list[0])) #生成csv数据内容 for excel_name in excel_list: for row_value in read_excel(excel_name): xlsx_to_csv(csv_file_name,row_value) print('Excel文件转csv文件结束 ')
以上就是2种实例方法,感谢大家的阅读和的支持。
122 在
学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
Copyright·© 2019 侯体宗版权所有·
粤ICP备20027696号