python脚本-excel批量转换为csv文件
pandas和SQL数据分析实战视频教程
https://study.163.com/course/courseMain.htm?courseId=1006383008&share=2&shareId=400000000398149


# -*- coding: utf-8 -*-
"""
Created on Mon Apr 4 18:04:06 2016 @author: Toby,qq:231469242,原创版权
""" import csv,os,openpyxl #获取所有excel文件名
def Get_excelFileNames():
excelFiles_list=[]
for excelFilename in os.listdir('.'):
if excelFilename.endswith('.xlsx') or excelFilename.endswith('.xls'):
excelFiles_list.append(excelFilename) return excelFiles_list '''
excelFiles_list
Out[17]: ['Book1.xlsx', 'Book2.xlsx', 'Book3.xlsx', 'Book4.xlsx'] ''' #获取一个excel内所有表格
def Get_sheets_from_oneExcel(excelFileName):
wb=openpyxl.load_workbook(excelFileName)
sheets=wb.get_sheet_names() return sheets '''
Get_sheets_from_oneExcel('Book1.xlsx')
Out[19]: ['Sheet1', 'Sheet2', 'Sheet3']
''' #获取excel的行信息
def Get_sheet_rowData(excelFileName,sheetName,rowNum):
wb=openpyxl.load_workbook(excelFileName)
sheet=wb.get_sheet_by_name(sheetName)
highest_column=sheet.get_highest_column()
rowData=[] #append each cell to this list
#loop through each cell in the row
for colNum in range(1,highest_column+1):
#append each cell's data to rowData
cell_value=sheet.cell(row=rowNum,column=colNum).value
rowData.append(cell_value) return rowData '''
Get_sheet_rowData('Book1.xlsx','Sheet1',1)
Out[39]: ['fsdf ', 'ds', 'fdf'] ''' #获取excel的信息
def Get_sheet_Data(excelFileName,sheetName):
wb=openpyxl.load_workbook(excelFileName)
sheet=wb.get_sheet_by_name(sheetName)
highest_row=sheet.get_highest_row()
highest_column=sheet.get_highest_column() sheet_data=[]
for rowNum in range(1,highest_row+1):
rowData=[] #append each cell to this list
#loop through each cell in the row
for colNum in range(1,highest_column+1):
#append each cell's data to rowData
cell_value=sheet.cell(row=rowNum,column=colNum).value
rowData.append(cell_value) sheet_data.append(rowData)
rowData=[] #清空行数据,为遍历重新准备
return sheet_data '''
Get_sheet_Data("Book1.xlsx",'Sheet1')
Out[41]: [['fsdf ', 'ds', 'fdf'], ['fdsf', 'tt', 'fds'],
['gfdgg', 'gfdg', 'gdfgdg']] ''' #取一个CSV名字
def Get_csvFileName(excelFileName,sheetName):
baseName=os.path.splitext(excelFileName)[0]
csvFileName=os.path.join('csvFiles',baseName+"_"+sheetName+".csv")
return csvFileName #把一个excel的sheet转换为csv
def Convert_oneExcelsheet_to_csv(excelFileName,sheetName):
csvFileName=Get_csvFileName(excelFileName,sheetName)
csvObj=open(csvFileName,'w',newline='')
csvWriter=csv.writer(csvObj)
sheet_data=Get_sheet_Data(excelFileName,sheetName)
for rowData in sheet_data:
csvWriter.writerow(rowData) csvObj.close() '''
Convert_oneExcelsheet_to_csv("Book1.xlsx",'Sheet1') ''' #把一个excel的所有sheet转换为各自的csv文件
def Convert_oneExcelAllsheets_to_csv(excelFileName):
sheets=Get_sheets_from_oneExcel(excelFileName)
for sheetName in sheets:
Convert_oneExcelsheet_to_csv(excelFileName,sheetName) #转换所有excel的所有sheet为各自的csv文件
def Convert_allExcellAllsheets_to_csv(excelFiles_list):
for excelFileName in excelFiles_list:
Convert_oneExcelAllsheets_to_csv(excelFileName) os.makedirs('csvFiles', exist_ok=True)
excelFiles_list=Get_excelFileNames()
#转换所有excel的所有sheet为各自的csv文件
Convert_allExcellAllsheets_to_csv(excelFiles_list)
https://study.163.com/provider/400000000398149/index.htm?share=2&shareId=400000000398149( 欢迎关注博主主页,学习python视频资源,还有大量免费python经典文章)

python脚本-excel批量转换为csv文件的更多相关文章
- zabbix3.4用Python脚本Excel批量导入主机
1.安装xlrd读取Excel文件 1.1. 下载setuptools-38.2.4.zip,上传至zabbix服务器解压安装,下载地址:https://pypi.python.org/package ...
- Python脚本:批量将.doc文件转化为.docx文件
将.doc转换为.docx文件有几种常用的方法: Microsoft Word 和 WPS 自带.doc转换.docx功能,但只能一个文件一个文件转换,批量转换要会员 在线网页 Office-Conv ...
- excel批量转换为CSV格式,xls批量导出csv格式
工具/原料 excel 2013 地址链接:http://pan.baidu.com/s/1c1ZABlu 密码:d3rc 方法/步骤 首选我们把需要导出为CVS的Excel文件整理集中到 ...
- C# .csv文件转为Excel格式;Excel格式转换为.csv
using System; using System.Diagnostics; using System.IO; using System.Reflection; using System.Windo ...
- Python脚本打包成exe执行文件
需求 一个教辅目录结构检查工具,目录结构是[书籍]-[章节]-[题目|答案]-[*.jpg],后台有个异步处理的服务,需要强依赖这个目录结构. 书籍解析是单独的pipeline,日志对用户不可见,这里 ...
- Python:使用pymssql批量插入csv文件到数据库测试
并行进程怎么使用? import os import sys import time def processFunc(i): time.sleep(10-i) print i if __name__= ...
- Linux 用 shell 脚本 批量 导入 csv 文件 到 mysql 数据库
前提: 每个csv文件第一行为字段名 创建的数据库字段名同csv 文件的字段名 1. 批量导入 多个 csv 文件 for file in ./*.csv;do mv $file tablename. ...
- 如何使用python把json文件转换为csv文件
@ 目录 了解json整体格式 转换格式 提取key和value 使用pandas写入csv 了解json整体格式 这里有一段json格式的文件,存着全球陆地和海洋的每年异常气温(这里只选了一部分): ...
- shell脚本和python脚本实现批量ping IP测试
先建一个存放ip列表的txt文件: [root@yysslopenvpn01 ~]# cat hostip.txt 192.168.130.1 192.168.130.2 192.168.130.3 ...
随机推荐
- Alpha版本发布
Alpha版本发布 Part1.基本介绍 作业所属课程 课程链接 作业要求 要求链接 团队名称 Typhoon 作业目标 通过本次团队项目,体验通过使用软件工程来研发项目的 ...
- 模仿DotnetCore中间件的方式,做一个列表过滤的功能
我们的很多功能当中都会遇到对版本进行过滤的场合,例如你可能需要对列表中的数据的时间进行过滤.版本过滤.渠道以及地区信息进行过滤. 原本的做法:设计很多个过滤方法,通过枚举的方式组合,选择需要过滤哪些方 ...
- 工程代码不编译src的java目录下的xml文件问题及解决
IDEA的maven项目中,默认源代码目录下(src/main/java目录)的xml等资源文件并不会在编译的时候一块打包进classes文件夹,而是直接舍弃掉.如果使用的是Eclipse,Eclip ...
- Windows设置多用户同时远程登录
1.在键盘上按Win+R键(也可以在开始菜单右键然后选择运行),在运行的输入框里面输入"gpedit.msc"命令.然后点击确定 2.在“计算机组策略”中依次展开 计算机配置- ...
- 3星|路骋《用得上的商学院》:100个MBA知识点的简单介绍
作者在序言中说,放弃了上亿的股票期权去念了两年全脱产的清华-MIT Global MBA.念完后认为课程不错,考虑到这种课本科毕业不能直接念,工作几年后又很难脱产来念,因此办了一个音频课程来讲这个MB ...
- postgresql —— 查看索引
查索引 语句: SELECT tablename, indexname, indexdef FROM pg_indexes WHERE tablename = 'user_tbl' ORDER BY ...
- Ajax使用方法
什么是AJAX? AJAX,Asynchronous JavaScript and XML (异步的JavaScript和XML),一种创建交互式网页应用的网页开发技术方案. 异步的JavaScrip ...
- java获取远程服务器应用程序服务状态
package lct.conference.test; import java.io.BufferedReader; import java.io.IOException; import java. ...
- public abstract啥时候可以省略?
父类是抽象类,其中有抽象方法,那么子类继承父类,并把父类中的所有方法都实现覆盖了,子类才有创建对象实例的能力,否则子类也必须是抽象类.抽象类中可以有构造方法,是子类在构造子类对象时需要调用父类(抽象类 ...
- JDK8中好用的日期处理-LocalDate类-LocalTime-LocalDateTIme,mysql解决时区相差13小时的问题,日期格式器DateTimeFormatter
set global time_zone='+08:00'; set time_zone = '+08:00'; show variables like '%time_zone:'