python xlrd 读取excel

70次阅读

共计 1195 个字符,预计需要花费 3 分钟才能阅读完成。

文章链接:https://mp.weixin.qq.com/s/fojkVO-AB2cCu7FtDtPBjw

之前的文章介绍过关于写入 excel 表格的方法,近期自己在做一个网站,涉及到读取 excel,然后把数据存到数据库,故把操作 excel 的过程记录下的。
pip3 install xlrd 直接 pip3 安装。
为了演示方便,这里的 excel 文件直接和 python 文件放在一个目录下的,如果是项目中,需要注意 excel 的文件路径。
# 操作 excel
excel = xlrd.open_workbook(“test.xls”)
excel.sheet_names() # 获取 excel 里的工作表 sheet 名称数组
sheet = excel.sheet_by_index(0) #根据下标获取对应的 sheet 表

sheet.row_values(0) #获取第一行的数据
sheet.col_values(0) #获取第一列的数据
sheet.nrows #获取总共的行数
sheet.ncols #获取总共的列数
假设我们需要第二行至最后一行的数据,就可以直接遍历获取了
for i in range(1, sheet.nrows):
row_list = sheet.row_values(i) # 每一行的数据在 row_list 数组里
对于单个的单元格可以通过 sheet.cell(row,col) 参数就是 row- 行、col- 列,这个方法得到的是 cell 对象,sheet.cell(0,0).value value 是对应的单元格内容。
还有一种特殊的情况,合并单元格的:sheet.merged_cells 可以查看合并单元格的情况
print(sheet.merged_cells)
[(0, 1, 1, 3), (4, 10, 1, 2)]
(0, 1, 1, 3) 第一行 第 2 到 3 列合并 (4, 10, 1, 2) 第 5 到 10 行 第 2 列合并 前两个参数指行范围,后两个参数指列范围。合并单元格的内容取值只有 合并的第一个单元格可以获取到值,其他为空。
print(sheet.cell(0, 1).value)
print(sheet.cell(4, 1).value)
自己做的网站,数据就是从 excel 表格来的,所以就需要对 excel 表格进行操作,把数据写到数据库里面。我这边需要使用到的就是遍历 excel 行去取值,难度并不高,唯一要注意的就是 excel 的路径问题。
media_root = os.path.join(settings.BASE_DIR, ‘upload/excel/’)
word_path = media_root + “**.xls”
这篇文章介绍的比较简单,但是用好了这些库,对我们日常使用还是很有帮助的,提升开发效率。
欢迎关注我的个人博客:https://www.manjiexiang.cn/
更多精彩欢迎关注微信号:春风十里不如认识你 一起学习,一起进步,欢迎上车,有问题随时联系,一起解决!!!

正文完
 0