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 23 Python
Python的Urllib库的基本使用教程
Apr 30 Python
用yum安装MySQLdb模块的步骤方法
Dec 15 Python
python中文分词教程之前向最大正向匹配算法详解
Nov 02 Python
Python numpy 常用函数总结
Dec 07 Python
python spyder中读取txt为图片的方法
Apr 27 Python
Python3中的json模块使用详解
May 05 Python
Django后台获取前端post上传的文件方法
May 28 Python
python3 实现一行输入,空格隔开的示例
Nov 14 Python
如何使用repr调试python程序
Feb 28 Python
Python关于拓扑排序知识点讲解
Jan 04 Python
Python 操作pdf pdfplumber读取PDF写入Exce
Aug 14 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
PHP中的traits简单使用实例
2015/05/13 PHP
PHP实现删除字符串中任何字符的函数
2015/08/11 PHP
php 使用curl模拟登录人人(校内)网的简单实例
2016/06/06 PHP
PHP对象实例化单例方法
2017/01/19 PHP
js event事件的传递与冒泡处理
2009/12/06 Javascript
简单实用jquery版三级联动select示例
2013/07/04 Javascript
javascript中的原型链深入理解
2014/02/24 Javascript
javascript中实现兼容JAVA的hashCode算法代码分享
2020/08/11 Javascript
基于jQuery实现复选框的全选 全不选 反选功能
2014/11/24 Javascript
jQuery左侧大图右侧小图焦点图幻灯切换代码分享
2015/08/19 Javascript
举例讲解JavaScript中关于对象操作的相关知识
2015/11/16 Javascript
全面解析Bootstrap排版使用方法(标题)
2015/11/30 Javascript
基于Bootstrap里面的Button dropdown打造自定义select
2016/05/30 Javascript
node+experss实现爬取电影天堂爬虫
2016/11/20 Javascript
js实现简单的获取验证码按钮效果
2017/03/03 Javascript
python进阶教程之词典、字典、dict
2014/08/29 Python
python 简单的绘图工具turtle使用详解
2017/06/21 Python
python探索之BaseHTTPServer-实现Web服务器介绍
2017/10/28 Python
Django处理文件上传File Uploads的实例
2018/05/28 Python
numpy数组广播的机制
2019/07/12 Python
Python OrderedDict字典排序方法详解
2020/05/21 Python
python操作toml文件的示例代码
2020/11/27 Python
使用CSS3的box-sizing属性解决div宽高被内边距撑开的问题
2016/06/28 HTML / CSS
HTML5 创建canvas元素示例代码
2014/06/04 HTML / CSS
ASOS英国官网:英国在线时装和化妆品零售商
2017/05/19 全球购物
速比涛英国官网:Speedo英国
2019/07/15 全球购物
The Hut英国:英国领先的豪华在线百货商店
2019/07/26 全球购物
大学生专业个人学习的自我评价
2013/10/26 职场文书
公司中秋节活动方案
2014/02/12 职场文书
《母鸡》教学反思
2014/02/25 职场文书
法语专业求职信
2014/07/20 职场文书
ktv好的活动方案
2014/08/15 职场文书
房产转让协议书(2014版)
2014/09/30 职场文书
教师党的群众路线学习心得体会
2014/11/04 职场文书
2014年幼儿园后勤工作总结
2014/11/10 职场文书
企业财务总监岗位职责
2015/04/03 职场文书