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 ...
随机推荐
- Django之小结
常用的函数方法与包的调用 # 登陆视图函数 def login(request): if request.method == 'GET': return render(request,'login.h ...
- Git与其他VCS的差异
推荐:Git essentials 一共4集视频 对待数据 在对待不同版本数据问题上,分为两派:差异增量.直接快照 增量差异 Git 和其它版本控制系统(包括 Subversion 和近似工具)的主 ...
- DNS服务——正向查找区 和 逆向查找区
前言 正向查找区,就是我们最熟知的DNS.即根据域名解析成IP 逆向查找区,即根据IP解析成域名. 他们之间的关系很像ARP和RARP 正向查找区 /etc/named.rfc1912.zones用于 ...
- mysql安装和遇到的问题处理
遇到需要在新系统上安装MySQL的事情,简单记录一下过程. 声明:最好的文档是官方文档,我也是看的官方文档,只是中间遇到点问题,记录一下出现的问题和处理方式.贴一些官方文档地址. 用tar包的安装方式 ...
- 配置多网卡多IP的方式
[root@web01 conf.d]# cat ip.conf server { listen 10.0.0.7:80; server_name _; location ...
- (转)大厂常问到的14个Java面试题
1. synchronized和reentrantlock异同 相同点 都实现了多线程同步和内存可见性语义 都是可重入锁 不同点 实现机制不同 synchronized通过java对象头锁标记和Mon ...
- 用js刷剑指offer(二叉树中和为某一值的路径)
题目描述 输入一颗二叉树的根节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径.路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径.(注意: 在返回值的list中,数组长度大 ...
- 使用Scrapy框架爬取腾讯新闻
昨晚没事写的爬取腾讯新闻代码,在此贴出,可以参考完善. # -*- coding: utf-8 -*- import json from scrapy import Spider from scrap ...
- jQuery隐藏和显示从上往下的实现方法
jquery 显示隐藏方法实现动画效果 方向 显示 隐藏 左上角到右下角 show() hide() 垂直向下 slideDown() slideUp() 水平与垂直两个方向 toggle() 垂直向 ...
- machine learning(13) -- solving the problem of overfitting:regularization
solving the problem of overfitting:regularization 发生的在linear regression上面的overfitting问题 发生在logistic ...