python脚本实现xls(xlsx)转成csv


Posted in Python onApril 10, 2016

# xls_csv

把xls,xlsx格式的文档转换成csv格式

# 使用
python xls2csv.py <xls or xlsx file path>

# -*- coding: utf-8 -*-
import xlrd
import xlwt
import sys
from datetime import date,datetime
 
def read_excel(filename):
 
  workbook = xlrd.open_workbook(filename)
  # print sheet2.name,sheet2.nrows,sheet2.ncols
  sheet2 = workbook.sheet_by_index(0)
  
  for row in xrange(0, sheet2.nrows):
    rows = sheet2.row_values(row)
    def _tostr(cell):
      if type(u'') == type(cell): 
        return "\"%s\"" % cell.encode('utf8')
      else:
        return "\"%s\"" % str(cell) 
  
    print ','.join([_tostr(cell) for cell in rows ])
  
if __name__ == '__main__':
  filename = sys.argv[1]
  read_excel(filename)

再给大家分享一则代码

xlsx文件解析处理:openpyxl库 csv文件格式生成:csv

python#coding: utf-8
# 依赖openpyxl库:http://openpyxl.readthedocs.org/en/latest/

from openpyxl import Workbook
from openpyxl.compat import range
from openpyxl.cell import get_column_letter
from openpyxl import load_workbook
import csv
import os
import sys

def xlsx2csv(filename):
try:
 xlsx_file_reader = load_workbook(filename=filename)
 for sheet in xlsx_file_reader.get_sheet_names():
 # 每个sheet输出到一个csv文件中,文件名用xlsx文件名和sheet名用'_'连接
 csv_filename = '{xlsx}_{sheet}.csv'.format(
 xlsx=os.path.splitext(filename.replace(' ', '_'))[0],
 sheet=sheet.replace(' ', '_'))

 csv_file = file(csv_filename, 'wb')
 csv_file_writer = csv.writer(csv_file)

 sheet_ranges = xlsx_file_reader[sheet]
 for row in sheet_ranges.rows:
 row_container = []
 for cell in row:
 if type(cell.value) == unicode:
row_container.append(cell.value.encode('utf-8'))
else:
row_container.append(str(cell.value))
csv_file_writer.writerow(row_container)
csv_file.close()

 except Exception as e:
print(e)

if __name__ == '__main__':
 if len(sys.argv) != 2:
 print('usage: xlsx2csv <xlsx file name>')
else:
xlsx2csv(sys.argv[1])
sys.exit(0)
Python 相关文章推荐
Python struct.unpack
Sep 06 Python
python 字符串split的用法分享
Mar 23 Python
win7 下搭建sublime的python开发环境的配置方法
Jun 18 Python
详解Python3中的Sequence type的使用
Aug 01 Python
python编写简单爬虫资料汇总
Mar 22 Python
在Python中执行系统命令的方法示例详解
Sep 14 Python
Python实现连接postgresql数据库的方法分析
Dec 27 Python
Numpy中转置transpose、T和swapaxes的实例讲解
Apr 17 Python
mac下pycharm设置python版本的图文教程
Jun 13 Python
利用Python将图片中扭曲矩形的复原
Sep 07 Python
Python调用高德API实现批量地址转经纬度并写入表格的功能
Jan 12 Python
Django cookie和session的应用场景及如何使用
Apr 29 Python
Python使用gensim计算文档相似性
Apr 10 #Python
Python调用SQLPlus来操作和解析Oracle数据库的方法
Apr 09 #Python
python调用fortran模块
Apr 08 #Python
python3使用urllib模块制作网络爬虫
Apr 08 #Python
Python抓取电影天堂电影信息的代码
Apr 07 #Python
Python Requests安装与简单运用
Apr 07 #Python
Python Requests 基础入门
Apr 07 #Python
You might like
ThinkPHP模型详解
2015/07/27 PHP
对laravel的csrf 防御机制详解,及form中csrf_token()的存在介绍
2019/10/24 PHP
固定表格行列(expression)在IE下适用
2013/07/25 Javascript
js创建对象的区别示例介绍
2014/07/24 Javascript
jQuery点击输入框显示验证码图片
2016/05/19 Javascript
angularJs关于指令的一些冷门属性详解
2016/10/24 Javascript
微信小程序开发图片拖拽实例详解
2017/05/05 Javascript
Node.js+Express+MySql实现用户登录注册功能
2017/07/10 Javascript
JavaScript调试之console.log调试的一个小技巧分享
2017/08/07 Javascript
JS插件clipboard.js实现一键复制粘贴功能
2020/12/04 Javascript
浅谈vue方法内的方法使用this的问题
2018/09/15 Javascript
在Vue项目中取消ESLint代码检测的步骤讲解
2019/01/27 Javascript
vue实现淘宝购物车功能
2020/04/20 Javascript
[03:00]DOTA2-DPC中国联赛1月18日Recap集锦
2021/03/11 DOTA
python实现的阳历转阴历(农历)算法
2014/04/25 Python
python网络编程学习笔记(七):HTML和XHTML解析(HTMLParser、BeautifulSoup)
2014/06/09 Python
Python-嵌套列表list的全面解析
2016/06/08 Python
python中使用ctypes调用so传参设置遇到的问题及解决方法
2019/06/19 Python
python多进程(加入进程池)操作常见案例
2019/10/21 Python
python生成特定分布数的实例
2019/12/05 Python
python 绘制国旗的示例
2020/09/27 Python
想学画画?python满足你!
2020/12/24 Python
python 制作磁力搜索工具
2021/03/04 Python
英国著名的药妆网站:Escentual
2016/07/29 全球购物
Mio Skincare美国官网:身体紧致及孕期身体护理
2017/03/05 全球购物
体育教育专业毕业生自荐信
2013/11/15 职场文书
学生实习介绍信
2014/01/15 职场文书
工程质量月活动方案
2014/02/19 职场文书
中秋手机店促销方案
2014/06/16 职场文书
环境工程专业毕业生求职信
2014/09/30 职场文书
毕业实习证明(4篇)
2014/10/28 职场文书
2014年合同管理工作总结
2014/12/02 职场文书
儿园租房协议书范本
2014/12/02 职场文书
先进工作者个人总结
2015/02/15 职场文书
Redis过期数据是否会被立马删除
2022/07/23 Redis
GO中sync包自由控制并发示例详解
2022/08/05 Golang