Python 第三方模块 办公 Excel

在这里插入图片描述
在这里插入图片描述
一.xlrd模块

官方文档:https://pypi.org/project/xlrd/

1.概述
(1)功能:

xlrd是用于读取Excel文件数据的Python库,支持支持xlsx和xls格式

(2)安装:

pip install xlrd

2.对象
(1)Excel文件:

xlrd.book.Book()

#######################################################################

获取所有工作表:[<SheetList>=]<workbook>.sheets()
通过索引获得指定工作表:[<sheet>=]<workbook>.sheet_by_index(<sheetx>)
通过表名获得指定工作表:[<sheet>=]<workbook>.sheet_by_name(<sheet_name>)
判断指定工作表是否导入成功:[<sof>=]<workbook>.sheet_loaded(<sheet_name_or_index>)
  #参数说明:
    workbook:指定Excel文件;为xlrd.book.Book
  	SheetList:返回所有工作表;为xlrd.sheet.Sheet list
	sheetx:指定工作表的索引;int
	sheet:返回工作表;为xlrd.sheet.Sheet
	sheet_name:指定表名
    sheet_name_or_index:指定工作表;int(索引)/str(表名)

#######################################################################

>>> sheets=workbook.sheets()
>>> for sheet in sheets:
...     print(sheet)
...
<xlrd.sheet.Sheet object at 0x000001FBA9DB06A0>
<xlrd.sheet.Sheet object at 0x000001FBA9DB0640>
<xlrd.sheet.Sheet object at 0x000001FBA9DB0700>
>>> sheets[0]
<xlrd.sheet.Sheet object at 0x000001FBA9DB06A0>
>>> sheet=workbook.sheet_by_index(0)
>>> workbook.sheet_loaded(0)
True

(2)工作表:

xlrd.sheet.Sheet()

#######################################################################

工作表的行数:<sheet>.nrows
工作表的列数:<sheet>.ncols
  #参数说明:
	sheet:指定工作表;为xlrd.sheet.Sheet

合并单元格的信息:[<merged_cells_list>=]<sheet>.merged_cells
  #参数说明:
	merged_cells_list:合并单元格的信息;list,元素为(<row_start>(),<row_end>(不含),<col_start>(),<col_end>(不含))

#######################################################################

获取指定行:[<rl>=]<sheet>.row(<rowx>)
获取指定行中指定列范围:[<rl>=]<sheet>.row_slice(<rowx>[,start_colx=0,end_colx=None])
获取指定行中指定列范围的值:[<rvl>=]<sheet>.row_values(<rowx>[,start_colx=0,end_colx=None])
获取指定行中指定列范围的数据类型:[<t>=]<sheet>.row_types(<rowx>[,start_colx=0,end_colx=None])
获取指定行的长度:[<len>=]<sheet>.row_len(<rowx>)
获取所有行:[<rows>=]<sheet>.get_rows()
  #参数说明:
	rowx:指定行的索引;int
	start_colx,end_colx:共同指定要获取的列的索引范围;均为int
	rl:返回指定行;list,元素均为<type>:<val>
	rvl:返回指定行的值;list
	t:返回指定行的数据类型;为array.array
	  #empty为0,string为1,number为2,date为3,boolean为4,error为5
	rows:返回所有行;为generator

获取指定列:[<cl>=]<sheet>.col(<colx>)
获取指定列中指定行范围:[<cl>=]<sheet>.col_slice(<colx>[,start_rowx=0,end_rowx=None])
获取指定列中指定行范围的值:[<cvl>=]<sheet>.col_values(<colx>[,start_rowx=0,end_rowx=None])
获取指定列中指定行范围的数据类型:[<t>=]<sheet>.col_types(<colx>[,start_rowx=0,end_rowx=None])
获取指定列的长度:[<len>=]<sheet>.col_len(<colx>)
获取所有列:[<cols>=]<sheet>.get_cols()

获取指定单元格:[<cell>=]<sheet>.cell(<rowx>,<colx>)
  #对合并单元格,使用起始行/列的索引
获取指定单元格的值:[<cellv>=]<sheet>.cell_value(<rowx>,<colx>)
获取指定单元格的数据类型:[<it>=]<sheet>.cell_type(<rowx>,<colx>)
  #参数说明:
	cell:返回单元格;为xlrd.sheet.Cell

#######################################################################

>>> sheet.nrows
101
>>> sheet.ncols
1
>>> sheet.row_values(0)
['评价等级']
>>> sheet.row(0)
[text:'评价等级']
>>> sheet.row_types(0)
array('B', [1])

(3)单元格:

xlrd.sheet.Cell()

#######################################################################

<cell>.

3.方法
(1)读取Excel文件:

读取Excel文件:[<workbook>=]xlrd.open_workbook([filename=None,logfile=sys.stdout,verbosity=0,use_mmap=USE_MMAP,file_contents=None,encoding_override=None,formatting_info=False,on_demand=False,ragged_rows=False])
  #参数说明:
	filename:指定要打开的Excel文件;str
	  #注意:虽然默认filename=None,但其不能接受None作为值
	workbook:返回Excel文件;为xlrd.book.Book

#实例:
>>> workbook=xlrd.open_workbook("习题3.1.xls")

(2)读取日期时间数据:

将Excel日期时间数据转换为tuple:[<DTTuple>=]xlrd.xldate_as_tuple(<xldate>,<datemode>)
  #参数说明:
	xldate:指定Excel日期时间数据;float
	datemode:指定日期模式;0(1900-based)/1(1904-based)
	DTTuple:返回日期时间元组;tuple

#######################################################################

将Excel日期时间数据转换为datetime.datetime:[<DTDatetime>=]xlrd.xldate_as_datetime(<xldate>,<datemode>)
  #参数说明:
	DTDatetime:返回日期时间;为datetime.datetime

二.xlwt模块

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值