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 pickle模块用法实例分析
May 27 Python
python编程实现希尔排序
Apr 13 Python
python实现自动发送报警监控邮件
Jun 21 Python
selenium+python设置爬虫代理IP的方法
Nov 29 Python
PyTorch基本数据类型(一)
May 22 Python
Python生成一个迭代器的实操方法
Jun 18 Python
基于Python实现拆分和合并GIF动态图
Oct 22 Python
python下载卫星云图合成gif的方法示例
Feb 18 Python
离线状态下在jupyter notebook中使用plotly实例
Apr 24 Python
keras 权重保存和权重载入方式
May 21 Python
python属于软件吗
Jun 18 Python
利用python实时刷新基金估值(摸鱼小工具)
Sep 15 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面向对象的进阶学习(抽像类、接口、final、类常量)
2012/05/07 PHP
基于Asp.net与Javascript控制的日期控件
2010/05/22 Javascript
深入理解Javascript中this的作用域
2014/08/12 Javascript
10分钟学会写Jquery插件实例教程
2014/09/06 Javascript
js实现对table动态添加、删除和更新的方法
2015/02/10 Javascript
jquery使整个div区域可以点击的方法
2015/06/24 Javascript
JavaScript中使用sencha gridpanel 编辑单元格、改变单元格颜色
2015/11/26 Javascript
jQuery Validate表单验证深入学习
2015/12/18 Javascript
Bootstrap多级导航栏(级联导航)的实现代码
2016/03/08 Javascript
JavaScript自定义浏览器滚动条兼容IE、 火狐和chrome
2017/01/05 Javascript
jquery——九宫格大转盘抽奖实例
2017/01/16 Javascript
jquery将标签元素的高设为屏幕的百分比
2017/04/19 jQuery
基于Bootstrap实现城市三级联动
2017/11/23 Javascript
vue组件中使用iframe元素的示例代码
2017/12/13 Javascript
尝试自己动手用react来写一个分页组件(小结)
2018/02/09 Javascript
详解VueJs中的V-bind指令
2018/05/03 Javascript
vue组件挂载到全局方法的示例代码
2018/08/02 Javascript
angular6 填坑之sdk的方法
2018/12/27 Javascript
微信小程序时间选择插件使用详解
2018/12/28 Javascript
判断“命令按钮”是否被鼠标单击详解
2019/07/31 Javascript
[01:00:06]加油DOTA_EP01_网络版
2014/08/09 DOTA
[01:13:51]TNC vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
wxpython 学习笔记 第一天
2009/03/16 Python
Python实现抓取网页生成Excel文件的方法示例
2017/08/05 Python
获取python文件扩展名和文件名方法
2018/02/02 Python
Python使用Tkinter实现转盘抽奖器的步骤详解
2020/01/06 Python
浅谈Pytorch torch.optim优化器个性化的使用
2020/02/20 Python
python使用QQ邮箱实现自动发送邮件
2020/06/22 Python
Python基于locals返回作用域字典
2020/10/17 Python
使用css实现android系统的loading加载动画
2019/07/25 HTML / CSS
全球酒店预订网站:Hotels.com
2016/08/10 全球购物
不尊敬老师检讨书范文
2014/11/19 职场文书
新教师2015年度工作总结
2015/07/22 职场文书
学校学期工作总结
2015/08/13 职场文书
pytorch加载预训练模型与自己模型不匹配的解决方案
2021/05/13 Python
Python中使用Opencv开发停车位计数器功能
2022/04/04 Python