继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【九月打卡】第2天 Python办公自动化

ninjaes
关注TA
已关注
手记 23
粉丝 0
获赞 4

课程名称Python办公自动化

课程章节:第3章 xlrd+xlwt读取/写入Excel数据 3-1 3-1 3-3

课程讲师: 离岛


课程内容

xlrd为Python第三方模块,用来读取excel表格数据

安装方式:

  • pip install xlrd

    由于前一节通过pycharm已经安装过了,因此这里提示已经安装

    http://img2.sycdn.imooc.com/6318a42f00018a0709990249.jpg






        pip list 查看已经安装的模块

http://img3.sycdn.imooc.com/6318a718000186f209740620.jpg

 导入:import xlrd

  这里需要注意excel表格的基础概念

http://img1.sycdn.imooc.com/6318a7b90001e00010860577.jpg


xlrd常用函数

 

  打开一个表格使用open_workbook

 其中filename既可以是绝对路径也可以是相对路径,

 encoding_override  表示编码,

 formatting_info 表示是否保存excel表格格式

 on_demand=False, 是否按需加载工作表,默认加载所有工作表,通过sheet_loaded查看是否加载工作表,入参是工作表名称或者工作表的索引(从零开始), unload_sheet(index/name) 卸载表格

(filename=logfile=sys.stdoutverbosity=use_mmap=file_contents=encoding_override=formatting_info=on_demand=ragged_rows=ignore_workbook_corruption=):


获取全部sheet,通过data_sheets()

获取某一个sheet的方法有如下三种,注意sheet的名字区分大小写

(data.sheets()[])
(data.sheet_by_name())
(data.sheet_by_index())

获取所有的sheet名字

data.sheet_names()

data.nsheets 返回工作表的数量


操作行的方法如下

sheet = data.sheet_by_index()
(sheet.nrows) (sheet.row()[].value) (sheet.row_types()) (sheet.row_values()) (sheet.row_len())

type  1 表示字符串、2表示number、3表示date、4表示布尔、5表示error。

以上方法是xlrd中常用的方法。



课程收获

加深了对xlrd的行基础操作接口的使用。


执行过程如果报以下错误,由于xlrd最新2.0.1版本只支持xls。因此,有两种方式来解决,一种是使用xls格式,第二种是调低xlrd的版本。

http://img1.sycdn.imooc.com/6318ac6000016c0d12640272.jpg


  • 通过pip uninstall xlrd, pip install xlrd=1.2.0

  • 通过pycharm中的模块管理来卸载安装,-表示卸载, +进行搜索安装,选择xlrd2

    http://img3.sycdn.imooc.com/6318ad830001fef012550885.jpg


解决之后需要注意修改导入的模块名和类名

xlrd2

data = xlrd2.open_workbook()
(data.sheet_loaded())




打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP