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实现递归版汉诺塔示例(汉诺塔递归算法)
Apr 08 Python
python嵌套字典比较值与取值的实现示例
Nov 03 Python
python清理子进程机制剖析
Nov 23 Python
使用Python快速制作可视化报表的方法
Feb 03 Python
python elasticsearch从创建索引到写入数据的全过程
Aug 04 Python
python基于K-means聚类算法的图像分割
Oct 30 Python
Python谱减法语音降噪实例
Dec 18 Python
python isinstance函数用法详解
Feb 13 Python
django创建css文件夹的具体方法
Jul 31 Python
如何将anaconda安装配置的mmdetection环境离线拷贝到另一台电脑
Oct 15 Python
matplotlib部件之套索Lasso的使用
Feb 24 Python
Python字符串对齐方法使用(ljust()、rjust()和center())
Apr 26 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
PHP无限分类的类
2007/01/02 PHP
php根据isbn书号查询amazon网站上的图书信息的示例
2014/02/13 PHP
Ubuntu12下编译安装PHP5.3开发环境
2015/03/27 PHP
jQueryPad 实用的jQuery测试工具(支持IE,chrome,FF)
2010/05/22 Javascript
jquery控制表单输入框显示默认值的方法
2015/05/22 Javascript
Bootstrap表单布局样式代码
2016/05/31 Javascript
vue.js入门教程之计算属性
2016/09/01 Javascript
利用JQuery直接调用asp.net后台的简单方法
2016/10/27 Javascript
浅谈jquery页面初始化的4种方式
2016/11/27 Javascript
使用canvas及js简单生成验证码方法
2017/04/02 Javascript
JS+Ajax实现百度智能搜索框
2017/08/04 Javascript
jQuery使用bind函数实现绑定多个事件的方法
2017/10/11 jQuery
AngularJS实现的生成随机数与猜数字大小功能示例
2017/12/25 Javascript
微信小程序云开发 搭建一个管理小程序
2019/05/17 Javascript
基于html+css+js实现简易计算器代码实例
2020/02/28 Javascript
openlayers4.6.5实现距离量测和面积量测
2020/09/25 Javascript
vue element和nuxt的使用技巧分享
2021/01/14 Vue.js
简单解析Django框架中的表单验证
2015/07/17 Python
Python随机生成带特殊字符的密码
2016/03/02 Python
Python脚本实现自动发带图的微博
2016/04/27 Python
python 中split 和 strip的实例详解
2017/07/12 Python
PyQt5每天必学之带有标签的复选框
2018/04/19 Python
python读取有密码的zip压缩文件实例
2019/02/08 Python
python sleep和wait对比总结
2021/02/03 Python
简单介绍HTML5中audio标签的使用
2015/09/24 HTML / CSS
美国儿童运动鞋和服装零售商:Kids Foot Locker
2017/08/05 全球购物
可持续木材、生态和铝制太阳镜:Proof Eyewear
2019/07/24 全球购物
餐饮采购员岗位职责
2014/03/15 职场文书
商场主管竞聘书
2014/03/31 职场文书
服务承诺书怎么写
2014/05/24 职场文书
微笑服务标语
2014/06/24 职场文书
律师授权委托书范本
2014/10/07 职场文书
财产保全担保书
2015/01/20 职场文书
婚礼嘉宾致辞
2015/07/28 职场文书
曾国藩励志经典名言37句,蕴含哲理
2019/10/14 职场文书
详细聊聊vue中组件的props属性
2021/11/02 Vue.js