Python3.4如何读写Excel

在python3.x(散仙使用的版本是python3.4)里,我们应该如何操作excel。

首先在python3.4里,我们可以使用新的python类库,来支持3.x之后的读写excel

针对 03版excel(xls结尾的),我们可以使用xlrd读,xlwt包来写 
针对 07版excel(xlsx结尾的),我们可以使用openpyxl来操作读写excel 


xlwt的下载地址https://pypi.python.org/pypi/xlwt3 
xlrd的下载地址https://pypi.python.org/pypi/xlrd3 
openpyx1的下载地址https://pypi.python.org/pypi/openpyxl


下载完扩展的包库之后,直接解压某个目录,然后执行命令进行安装包系统的python类库里: 

python setup.py install

核心代码,如下所示:

#读取excel使用(支持03)
import xlrd
#写入excel使用(支持03)
import xlwt3
#读取execel使用(支持07)
from openpyxl import Workbook
#写入excel使用(支持07)
from openpyxl import load_workbook

def showexcel(path):
    workbook=xlrd.open_workbook(path)
    sheets=workbook.sheet_names();
    #多个sheet时,采用下面的写法打印
    #for sname in sheets:
        #print(sname)
    worksheet=workbook.sheet_by_name(sheets[0])
    #nrows=worksheet.nrows
    #nclows=worksheet.ncols
    for i in range(0,worksheet.nrows):
        row=worksheet.row(i)

        for j in range(0,worksheet.ncols):
            print(worksheet.cell_value(i,j),"\t",end="")

        print()

def writeexcel03(path):

    wb=xlwt3.Workbook()
    sheet=wb.add_sheet("xlwt3数据测试表")
    value = [["名称", "hadoop编程实战", "hbase编程实战", "lucene编程实战"], ["价格", "52.3", "45", "36"], ["出版社", "机械工业出版社", "人民邮电出版社", "华夏人民出版社"], ["中文版式", "中", "英", "英"]]
    for i in range(0,4):
        for j in range(0,len(value[i])):
            sheet.write(i,j,value[i][j])
    wb.save(path)
    print("写入数据成功!")

def writeexcel07(path):

    wb=Workbook()
    #sheet=wb.add_sheet("xlwt3数据测试表")
    sheet=wb.create_sheet(0,"xlwt3数据测试表")

    value = [["名称", "hadoop编程实战", "hbase编程实战", "lucene编程实战"], ["价格", "52.3", "45", "36"], ["出版社", "机械工业出版社", "人民邮电出版社", "华夏人民出版社"], ["中文版式", "中", "英", "英"]]
    #for i in range(0,4):
        #for j in range(0,len(value[i])):
            #sheet.write(i,j,value[i][j])

            #sheet.append(value[i])
    sheet.cell(row = 1,column= 2).value="温度"
    wb.save(path)
    print("写入数据成功!")

def read07excel(path):
    wb2=load_workbook(path)
    #print(wb2.get_sheet_names())
    ws=wb2.get_sheet_by_name("详单一")
    row=ws.get_highest_row()
    col=ws.get_highest_column()
    print("列数: ",ws.get_highest_column())
    print("行数: ",ws.get_highest_row())

    for i  in range(0,row):
        for j in range(0,col):
            print(ws.rows[i][j].value,"\t\t",end="")

        print()

    #print(ws.rows[0][0].value)
    #print(ws.rows[1][0].value)
    #print(ws.rows[0][1].value)

#excelpath=r"D://名称.xlsx"
#writepath=r"D://书籍明细07.xlsx"
#writeexcel03(writepath)
#writeexcel07(writepath)

read07path="D://名称.xlsx";

read03path=r"E:\同义词词库.xls";
#read07excel(read07path)
#read07excel(read03path)
#showexcel(excelpath);
showexcel(read03path);

最后,分享三个格式数字和日期,以及随机数生成3个小知识点

#浮点数格式化成百分比
pp="{:.1%}".format(0.2356)
print(pp)

#格式化日期
import  datetime
s=(2014,12,11,0,0,0)
d="%02d-%02d-%02d" % s[:3]
print(d)

#打印随机数
import random
#浮点数随机数
f=random.uniform(1.0,100)
#整数范围随机数
f1=random.randint(1,23)
print(f1)
print(f)

结果如下:

D:\python\python.exe D:/pythonide/pythonprojectworkspace/tnssolve/f.py
23.6%
2014-12-11
17
84.57222433948785

Process finished with exit code 0

原文链接:http://qindongliang.iteye.com/blog/2163700
时间: 2024-10-01 05:40:21

Python3.4如何读写Excel的相关文章

MFC vs2012 Office2013 读写excel文件

近期在忙一个小项目(和同学一起搞的),在这里客户要求不但读写txt,而且可以读写excel文件,这里本以为很简单,结果...废话少说,过程如下: 笔者环境:win7 64+VS2012+Office2013+MFC. 说明:读写excel文件,通常包括1.ODBC数据库实现;2.通过解析Excel表格文件;3.通过OLE/COM的几种实现方法.本文主要研究通过OLE/COM实现对Excel表格的操作. 步骤: 1.新建MFC对话框.注意勾选自动化,否则后面加入不了需要的库,导致启动服务失败等错误

使用phpexcel类读写excel文件

使用原生php读写excel文件的博文地址: 基于使用原生php读写excel文件的不靠谱,本文将简单介绍如何使用第三方类库phpexcel来读写excel文件. 首先,需要到githut下载phpexcel类库.下载地址:https://github.com/PHPOffice/PHPExcel.

npoi读写excel

npoi读取excel方法: 首先下载:npoi.dll 添加引用: //读写excel需要的组建using NPOI.HPSF;using NPOI.HSSF.UserModel;using NPOI.POIFS.FileSystem;using NPOI.HSSF.Util;using NPOI.SS.UserModel;using NPOI.XSSF.UserModel;using NPOI.OpenXml4Net; IWorkbook workbook = null;//全局workbo

Python读写excel表格的方法二

目的:实现用python的另一种方法做excel的读取.新增操作. 环境:ubuntu 16.04  Python 3.5.2 情景:之前介绍了一种操作excel文件的方法(私链),现在使用另一种方法读写excel文件,一次性读出或写入,读写也很方便,读出为有序字典,像二维数组,需要用到3个第三方模块,pyexcel-io, pyexcel-xls, xlrd,主要导入pyexcel-xls和collections,pyexcel-xls基于xlrd和pyexcel-io,所以支持xls和xls

【原创】.NET读写Excel工具Spire.Xls使用(4)对数据操作与控制

              本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html .NET读写Excel工具Spire.Xls使用文章目录:http://www.cnblogs.com/asxinyu/p/4374032.html Spire.Office for .NET是E-iceblue开发的一种企业级.NET Office编辑的软件集合,包括Spire.Doc,Spire XLS,Spire.PDF,Spire.BarCo

C# 读写Excel文件

公司遇到一些tasks,需要将分析完毕的数据结果保存在Excel文件中.陆陆续续参与了这么多tasks后,现简单总结下: 操纵Excel 文件有多种方法,每种方法都有特色,适用于不同场景. 方法1:调用Office com组件: 也就是调用Interop类.此方法适用于desktop已经安装有Windows Office的情况.功能及其强大,windows Office拥有的功能,几乎通过此都能调用.劣势是读写速度最慢. 方法2:使用ODBC技术读写Excel文件 该方法读写速度似乎最快(没有准

C#读写EXCEL(二)

C#读写EXCEL(二) 2010-08-25 14:50:42| 分类: 默认分类 | 标签: |举报 |字号大 中 小 订阅 用微信 “扫一扫” 将文章分享到朋友圈. 用易信 “扫一扫” 将文章分享到朋友圈. 下载LOFTER客户端 private void button1_click(object sender, system.eventargs e) { if(openfiledialog1.showdialog() == dialogresult.ok) { oledbdataadap

C#读写EXCEL(二) ZedGraph在Asp.net中的应用

C#读写EXCEL(二) 2010-08-25 14:50:42|  分类: 默认分类 |  标签: |举报 |字号大中小 订阅 用微信  “扫一扫” 将文章分享到朋友圈. 用易信  “扫一扫” 将文章分享到朋友圈. 下载LOFTER客户端 private void button1_click(object sender, system.eventargs e) { if(openfiledialog1.showdialog() == dialogresult.ok) { oledbdataad

【原创】.NET读写Excel工具Spire.Xls使用(2)Excel文件的控制

              本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html .NET读写Excel工具Spire.Xls使用文章目录:http://www.cnblogs.com/asxinyu/p/4374032.html 前一篇文章:“.NET操作Excel利器Spire.Xls使用(1)入门介绍 ”给大家介绍了Spire.XLS的基本功能和一些比较.这篇文章将重点介绍C#操作Excel文件时,对Excel文件本身的相关