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

yipeiwu_com6年前Python基础

# 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使用Turtle库绘制动态钟表

python使用Turtle库绘制动态钟表

Python函数库众多,而且在不断更新,所以学习这些函数库最有效的方法,就是阅读Python官方文档。同时借助Google和百度。 本文介绍的turtle库对应的官方文档地址 绘制动态钟...

python开发之thread实现布朗运动的方法

python开发之thread实现布朗运动的方法

本文实例讲述了python开发之thread实现布朗运动的方法。分享给大家供大家参考,具体如下: 这里我将给大家介绍有关python中thread来实现布朗运动的一个例子 下面是运行效果...

Pandas透视表(pivot_table)详解

Pandas透视表(pivot_table)详解

介绍 也许大多数人都有在Excel中使用数据透视表的经历,其实Pandas也提供了一个类似的功能,名为pivot_table。虽然pivot_table非常有用,但是我发现为了格式化输出...

Python应用03 使用PyQT制作视频播放器实例

Python应用03 使用PyQT制作视频播放器实例

最近研究了Python的两个GUI包,Tkinter和PyQT。这两个GUI包的底层分别是Tcl/Tk和QT。相比之下,我觉得PyQT使用起来更加方便,功能也相对丰富。这一篇用PyQT实...

python生成excel的实例代码

本文实例为大家分享了python生成excel的具体代码,供大家参考,具体内容如下 #_*_coding:utf-8_*_ import MySQLdb import xlwt f...