TypeError: ‘set‘ object is not subscriptable

文章讨论了在使用openpyxl库读取Excel文件时遇到的TypeError,原因是调用`merged_cell_ranges`方法已弃用。解决方案是将`sheet_.merged_cell_ranges`更改为`.merged_cells.ranges`。作者提供了修正后的代码示例。
摘要由CSDN通过智能技术生成

TypeError: ‘set’ object is not subscriptable

1. 整体错误:

DeprecationWarning: Call to deprecated function merged_cell_ranges (Use ws.merged_cells.ranges).
merged_ranges = sheet_.merged_cell_ranges # 获取当前工作表的所有合并区域列表
TypeError: ‘set’ object is not subscriptable

2. 场景: 使用openpyxl读取合并单元格的时候使用这个函数爆出的错误

3. 原因&解决

原因:

sheet_.merged_cell_ranges     # 这个方法被弃用

应该改成

sheet_.merged_cells.ranges

下划线_改成.
解决:
由于sheet_.merged_cell_ranges这个方法应该替换为sheet_.merged_cells.ranges完美解决问题
源代码:

import openpyxl as xl
if __name__ == "__main__":
    wb = xl.load_workbook("excel/demo_merge.xlsx")
    sheet_ = wb["Sheet1"]
    # 改动位置
    merged_ranges = sheet_.merged_cell_ranges   # 获取当前工作表的所有合并区域列表
    print(merged_ranges)

解决之后替换代码

import openpyxl as xl
if __name__ == "__main__":
    wb = xl.load_workbook("excel/demo_merge.xlsx")
    sheet_ = wb["Sheet1"]
    # 改动位置
    merged_ranges = sheet_.merged_cells.ranges  # 获取当前工作表的所有合并区域列表
    print(merged_ranges)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值