【DeprecationWarning】openpyxl遍历所有sheet遇到【'list' object is not callable】

记录一下今天运用openpyxl库操作Excel的小坑。。。(老实鬼:MMP,这分明是一个智障的错误)

我的目的:遍历一个工作簿的所有sheet,并且逐个打印出来。本人新手小白,但是有需求不会,就找度娘。百度了一篇博文:

python读取excel文件中所有sheet表格:openpyxl模块(二)

https://blog.csdn.net/sqlserverdiscovery/article/details/53572519

参考的代码:

import openpyxl
 
wb = openpyxl.load_workbook('e:\\t.xlsx')
 
#获取workbook中所有的表格
sheets = wb.get_sheet_names()
 
print(sheets)
 
#循环遍历所有sheet
for i in range(len(sheets)):
    sheet= wb.get_sheet_by_name(sheets[i])
    
    print('\n\n第'+str(i+1)+'个sheet: ' + sheet.title+'->>>')

有了渔具,那就开始丰衣足食,自给自足,

我的代码:

from openpyxl import load_workbook
wb = load_workbook('最终汇总2.xlsx')
sheets = wb.get_sheet_names()
for i,sheet in enumerate(sheets,1):
    print(i,sheet)

代码没报错,但是给了一个围巾警告【DeprecationWarning】:

DeprecationWarning: Call to deprecated function get_sheet_names

(Use wb.sheetnames).
  sheets = wb.get_sheet_names()

由于从小养成不违反【警告类提示】(比如警告:水浅,禁止游泳!别问我为什么水浅不能游泳,我tm怎么知道做这个警示牌的人脑子里装的是哪个水?)。然后我就屁颠屁颠的把wb.get_sheet_names()给成了wb.sheetnames(),结果给老子报错:

    sheets = wb.sheetnames()
TypeError: 'list' object is not callable

然后又搜了很多篇stackflowover的问题回答,还是没有解决,无奈只能翻了翻openpyxl的官方文档

MMP,原来我多了一个括号。。。把wb.sheetnames()的括号去掉就OK了,没毛病老铁。

 

 

 

 

  • 20
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值