基于Python实现excel表格读写

首先安装对应的xlrd和xlwt

打开cmd命令窗口输入pip install xlrd和pip install xlwt就可以安装。之后输入pip list检查是否成功配置:

QQ图片20161122092324.png

xlrd操作#

接下来就是常用的语法操作:

 

立即学习“Python免费学习笔记(深入)”;

excel_data = xlrd.open_workbook(文件路径’)#得到对应的工作表

sheet = excel_data.sheets()[工作表序号]#得到对应工作表中的某一个表格

sheet.row_values(2)#对应的某一行的数据

sheet.cell(6,1).value#对应某一列的数据

QQ图片20161122092324.png

以该表格为例先试一下对应的语句:

QQ图片20161122092324.png

先指定对应的表格和其中的某一个表,否则会提示出错编译不通过。将以上代码运行得到:   

QQ图片20161122092324.png

源码如下:

import xlrd

import xlwt

excel_data = xlrd.open_workbook(文件路径’)

excel_data = xlrd.open_workbook(r’C:Usershys macDesktop实用的excel表格模板.xls’)

sheet = excel_data.sheets()[工作表序号]

sheet = excel_data.sheets()[0]

print(sheet.row_values(2)) #打印某一行数据

print(sheet.col_values(1))#打印某一列

print( )

print ( sheet.cell(6,1).value)#打印某个具体值

 

立即学习“Python免费学习笔记(深入)”;

运行结果如下:

QQ图片20161122092324.png

 

立即学习“Python免费学习笔记(深入)”;

对比表格得到一些值得注意的地方,指定的行数列数是从0开始,打开指定的表格时要注意绝对路径时要连同文件名和文件后缀也要带上才能成功读取数据。

 

立即学习“Python免费学习笔记(深入)”;

 

立即学习“Python免费学习笔记(深入)”;

接下来实验读取指定的某个单元格的数据:

 

立即学习“Python免费学习笔记(深入)”;

sheet.cell(行,列).value

QQ图片20161122092324.png

运行得到:

QQ图片20161122092324.png

对比表格得到数据:

QQ图片20161122092324.png

是其中的(7,B),和之前提到的从零开始计数是一致的。

 

立即学习“Python免费学习笔记(深入)”;

    除了以上列举的一些操作外还有其他的常见语句可以在相关文档和官网中查看,文末有相关链接,接下来实验另一个xlwt库以实现对excel表格的写入操作。

xlwt操作#

    对于excel表格一般关心的问题在于以下几个方面:

创建工作薄和表

写入单元格

常见格式设置(货币文本等)

创建公式

保存

接下来依次尝试以上提到的各个功能:

工作薄和表对应的对象为:workbook,sheet

QQ图片20161122092324.png

      2.单元格赋值:

QQ图片20161122092324.png

  这里尝试了一下采用负数

QQ图片20161122092324.png

    编译没有问题留作后面保存后检查结果是否正确。

        3.格式设置:

QQ图片20161122092324.png

       可见对应传入参数除行列和值外还包括style这一默认省略的参数。这里试验设置的格式为加粗。其他格式可以参照查找文末文档实现。这里有一些常见得其他格式:

style = easyxf(num_format_str=’$#,##0.00′)

# or set it directly on the style object

style = easyxf(‘font: bold 1’)

style.num_format_str = ‘$#,##0.00’

sheet.write(0, 0, ‘100.00’, style)

        4.创建公式:

        使用xlwt.Formula可以实现Excel公式。

        sheet.write(0, 0, xlwt.Formula(‘HYPERLINK(“http://yujitomita.com”; “click me”)’))

        5.保存操作:

        workbook.save(“Python.xls”)

        wbk.save(‘路径名’)    

        这里值得提醒的是工作表的命名要小于31个字符且不能包括特殊字符(:。,等)。

     运行结果:

        按照之前的坑(-1,0)这里试运行结果:

# encoding : utf-8 
import xlrd
import xlwt

workbook = xlwt.Workbook() 
sheet = workbook.add_sheet(“Sheet 1”) 

#创建工作簿(workbook)和工作表(sheet)

sheet.write(-1, 0, ‘Python’)#行列对应

style = xlwt.easyxf(‘font: bold 1’)
sheet.write(1, 1, ‘style ‘, style)

workbook.save(‘C:Usershys macDesktopmr.cpython.xls’) 

       报错结果如下:

SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 2-3: truncated UXXXXXXXX escape

        遇到了文件编码的问题,修改后一句:

workbook.save(r’C:Usershys macDesktopmr.cpython.xls’)          

QQ图片20161122092324.png

        就回到了一开始留下的坑,单元格赋值规则应该与使用习惯一致不能为负数。最后修改得到:

import xlrd
import xlwt

workbook = xlwt.Workbook() 
sheet = workbook.add_sheet(“Sheet 1”) 

#创建工作簿(workbook)和工作表(sheet)

sheet.write(1, 0, ‘Python’)#行列对应

style = xlwt.easyxf(‘font: bold 1’)
sheet.write(1, 1, ‘style ‘, style)

workbook.save(r’C:Usershys macDesktopmr.cpython1.xls’)  #文件路径要存在且不能同名

QQ图片20161122092324.png

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2282721.html

(0)
上一篇 2025年2月27日 19:38:41
下一篇 2025年2月27日 19:39:07

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • Python读取PDF内容

    1,引言 晚上翻看《python网络数据采集》这本书,看到读取pdf内容的代码,想起来前几天集搜客刚刚发布了一个抓取网页pdf内容的抓取规则,这个规则能够把pdf内容当成html来做网页抓取。神奇之处要归功于firefox解析pdf的能力,…

    编程技术 2025年2月27日
    200
  • Python 类与元类的深度挖掘 II

    我们向上回溯一层,看看类对象本身是如何产生的。 我们知道 type() 方法可以查看一个对象的类型,或者说判断这个对象是由那个类产生的: print(type(12))print(type(‘python’)) 登录后复制 登录后复制 cl…

    2025年2月27日
    200
  • Python 中的枚举类型

    枚举类型可以看作是一种标签或是一系列常量的集合,通常用于表示某些特定的有限集合,例如星期、月份、状态等。python 的原生类型(built-in types)里并没有专门的枚举类型,但是我们可以通过很多方法来实现它,例如字典、类等: WE…

    编程技术 2025年2月27日
    200
  • 理解 Python 中s可变参数的 *args 和 **kwargs

    使用默认参数的可变参数 python是支持可变参数的,最简单的方法莫过于使用默认参数,例如: def test_defargs(one, two = 2):   print ‘Required argument: ‘, one   prin…

    编程技术 2025年2月27日
    200
  • python删除文件和删除目录的方法

    下面来看一下python里面是如何删除一个文件及文件夹的~~ 首先引入os模块 import os 删除文件: os.remove() 删除空目录: os.rmdir() 递归删除空目录: os.removedirs() 递归删除目录和文件…

    编程技术 2025年2月27日
    200
  • python3与python2.7的分别

    搜索一下大家就会知道,python有两个主要的版本,python2 和 python3 ,但是python又不同于其他语言,向下兼容,python3是不向下兼容的,但是绝大多数组件和扩展都是基于python2的,下面就来总结一下 pytho…

    编程技术 2025年2月27日
    200
  • Python 异常处理

    python提供了两个非常重要的功能来处理python程序在运行中出现的异常和错误。你可以使用该功能来调试python程序。 异常处理: 本站Python教程会具体介绍。 断言(Assertions):本站Python教程会具体介绍。 py…

    编程技术 2025年2月27日
    200
  • Go语言的类IPython 交互式编程界面

    bret victor 的 inventing on principle 是我看到过的最令人激动和震撼的演示,没有之一。虽然这位前苹果公司的ui大牛早在2012年就作出的这次演示,但他的影响一直没有减弱,编写程序过程中的任何变化,应该直接的…

    2025年2月27日 编程技术
    200
  • Python函数

    函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。 函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创见函数,这被叫做用户自定义函数。 定义一个函数 你…

    编程技术 2025年2月27日
    200
  • Python 日期和时间

    python程序能用很多方式处理日期和时间。转换日期格式是一个常见的例行琐事。python有一个time and calendar模组可以帮忙。   什么是Tick? 时间间隔是以秒为单位的浮点小数。 每个时间戳都以自从1970年1月1日午…

    编程技术 2025年2月27日
    200

发表回复

登录后才能评论