python 实现批量xls文件转csv文件的方法


Posted in Python onOctober 23, 2018

引言:以前写的一个批量xls转csv的python简单脚本,用的是python2.7

#coding=utf-8
import os
import time
import logging
import xlrd
import csv
 
#xls文件存放路径
INPUTPATH= u"D:\\lsssl\\桌面\\xls文件"
 
#生成的csv文件存放路径
OUTPATH = u"D:\\lsssl\桌面\\csv"
 
 
class changeCenter:
 def __init__(self):
  pass
 def getvalue(self,filename):
  self.mData = []
  xlsfile=xlrd.open_workbook(filename)
  table = xlsfile.sheet_by_index(0)#sheet1
  rownum = table.nrows #行
  colsnum = table.ncols #列
  for i in range(0,rownum):
   row = []
   for j in range(0,colsnum):
    value = table.cell_value(i,j)
    if not isinstance(value,float):
     value = value.encode('gbk')#非数字转一下码
    row.append(value)
   self.mData.append(tuple(row))
 def write(self, path, filename):
  if not os.path.exists(path):
   os.makedirs(path)
  csvfile = file("tmp","wb")
  writer = csv.writer(csvfile)
  writer.writerows(self.mData)
  csvfile.close()
  
  if os.path.exists(os.path.join(path,filename+".old")):
   os.remove(os.path.join(path,filename+".old"))
  if os.path.exists(os.path.join(path,filename)):
   os.rename(os.path.join(path,filename),os.path.join(path,filename+".old"))
  os.rename('tmp', os.path.join(path,filename))
  logging.info("write file finish")
  print "write",filename," finish"
 
 
def handleExcel():
 files,dirs,root = readFilename(INPUTPATH)
 for fi in files:
  strstock = os.path.join(INPUTPATH,fi)
  if os.path.exists(strstock):
   st = changeCenter()
   st.getvalue(strstock)
   name = fi.replace(".xls","")
   st.write(OUTPATH, name+".csv")
  else:
   print strstock+" don't exist"
 
#获取某个路径下的所有文件 
def readFilename(file_dir):
 for root, dirs, files in os.walk(file_dir): 
  return files,dirs,root
 
if __name__ == '__main__':
 handleExcel()

以上这篇python 实现批量xls文件转csv文件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
常用python数据类型转换函数总结
Mar 11 Python
python操作 hbase 数据的方法
Dec 18 Python
python微信跳一跳系列之棋子定位像素遍历
Feb 26 Python
Python针对给定字符串求解所有子序列是否为回文序列的方法
Apr 21 Python
Python 查找list中的某个元素的所有的下标方法
Jun 27 Python
python3 拼接字符串的7种方法
Sep 12 Python
python re库的正则表达式入门学习教程
Mar 08 Python
Python实现中值滤波去噪方式
Dec 18 Python
python GUI库图形界面开发之PyQt5结合Qt Designer创建信号与槽的详细方法与实例
Mar 08 Python
python中wx模块的具体使用方法
May 15 Python
Python常用断言函数实例汇总
Nov 30 Python
关于 Python json中load和loads区别
Nov 07 Python
python 把列表转化为字符串的方法
Oct 23 #Python
python 将list转成字符串,中间用符号分隔的方法
Oct 23 #Python
浅谈python中拼接路径os.path.join斜杠的问题
Oct 23 #Python
python 拼接文件路径的方法
Oct 23 #Python
python 将列表中的字符串连接成一个长路径的方法
Oct 23 #Python
Python运行不显示DOS窗口的解决方法
Oct 22 #Python
python批量赋值操作实例
Oct 22 #Python
You might like
星际原理概述
2020/03/04 星际争霸
PHPnow安装服务[apache_pn]失败的问题的解决方法
2010/09/10 PHP
使用laravel和ECharts实现折线图效果的例子
2019/10/09 PHP
在Z-Blog中运行代码[html][/html](纯JS版)
2007/03/25 Javascript
JavaScript加强之自定义event事件
2013/09/21 Javascript
jQuery.extend()、jQuery.fn.extend()扩展方法示例详解
2014/05/08 Javascript
jquery实现平滑的二级下拉菜单效果
2015/08/26 Javascript
jQuery自定义滚动条完整实例
2016/01/08 Javascript
Bootstrap每天必学之弹出框(Popover)插件
2016/04/25 Javascript
Vuejs第一篇之入门教程详解(单向绑定、双向绑定、列表渲染、响应函数)
2016/09/09 Javascript
利用jQuery插件imgAreaSelect实现图片上传裁剪(放大缩小)
2016/12/02 Javascript
Node.js如何使用Diffie-Hellman密钥交换算法详解
2017/09/05 Javascript
Vue插件打包与发布的方法示例
2018/08/20 Javascript
详解微信小程序开发聊天室—实时聊天,支持图片预览
2019/05/20 Javascript
[00:16]热血竞技场
2019/03/06 DOTA
详解Python的迭代器、生成器以及相关的itertools包
2015/04/02 Python
如何将python中的List转化成dictionary
2016/08/15 Python
Python实现通过继承覆盖方法示例
2018/07/02 Python
Python计算库numpy进行方差/标准方差/样本标准方差/协方差的计算
2018/12/28 Python
Django 框架模型操作入门教程
2019/11/05 Python
使用 Python 清理收藏夹里已失效的网站
2019/12/03 Python
基于Python和C++实现删除链表的节点
2020/07/06 Python
HTML5网页录音和上传到服务器支持PC、Android,支持IOS微信功能
2019/04/26 HTML / CSS
HTML5如何为形状图上颜色怎么绘制具有颜色和透明度的矩形
2014/06/23 HTML / CSS
美国在线眼镜商城:Eyeglasses.com
2017/06/26 全球购物
Java的五个基础面试题
2016/02/26 面试题
建筑自我鉴定
2013/10/19 职场文书
财务主管的岗位职责
2013/12/30 职场文书
乡镇保密工作责任书
2014/07/28 职场文书
财务务虚会发言材料
2014/10/20 职场文书
党员贯彻十八大精神思想汇报范文
2014/10/25 职场文书
2014年食堂工作总结
2014/11/20 职场文书
教师个人总结范文
2015/02/11 职场文书
公司更名通知函
2015/04/24 职场文书
2016简历自荐信优秀范文
2016/01/29 职场文书
Go语言设计模式之结构型模式
2021/06/22 Golang