【Python】xlrd模块使用

2019-04-12  本文已影响0人  失语失芯不失梦

python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库

安装:pip install xlrd

导入:import xlrd

具体使用方法如下:

以下例子皆用这个表格

打开excel文件:xlrd.open_workbook(filename)

如果路径或者文件名中有中文的话,加上r即可:xlrd.open_workbook(r"filename")

输出结果:<xlrd.book.Book object at 0x0000000002ECB908>

获取所有sheet名:sheet_names( )。将所有的sheet名存放到数组中输出

输 出结果:[u'adTipConfig', u'ad_test', u'Test']  

根据sheet索引或者名称获取每张sheet表里的数据内容:sheet_by_index( 索引值 )、sheet_by_name("sheetname")。

excel里的索引值都从0开始

输出结果:<xlrd.sheet.Sheet object at 0x0000000002D8BE48> 输出结果:<xlrd.sheet.Sheet object at 0x0000000002D8BE48>

这俩输出结果是一致的

获取指定sheet页的名称、行数、列数

获取第三个sheet页的名字、行数以及列数,输出结果:Test 3 2

获取整行的值:row_values( 索引值 )      获取整列的值:col_values( 索引值 )  ——> 都以数组形式返回数据

获取第一行第二列的值,输出结果:[u'username', u'userid'] [u'userid', 1.0, 2.0]

此处注意,我们输出结果里面数字是保留了一位小数的,那如果我们想直接输出整数如何处理呢?百度了好久都需要自己写个函数转一下,能更改excel里的数据格式直接读出来就是int型吗?而且我发现,如果直接读取那个数据其实是int型,但是写入数组里就变成浮点型了,谁能告知一下

获取单元格对象:cell( 行的索引值,列的索引值 )

获取第一行第二列的对象,输出结果:text:u'userid'

获取单元格值的数据类型:cell( 行的索引值,列的索引值 ).ctype

ctype返回值对应的数据类型是: 0 - empty, 1 - string, 2 - number, 3 - date, 4 - boolean, 5 - error

获取第一行第二列值的数据类型,输出结果:1 如果是时间类型,可以如此处理转成时间格式

获取某个单元格的值:cell_value( 行的索引值,列的索引值 )/cell( 行的索引值,列的索引值 ).value/row( 行的索引值 )[ 列的索引值 ].value

获取第一行第二列的值,输出结果:userid userid  userid
上一篇下一篇

猜你喜欢

热点阅读