Python含字典的嵌套列表排序报错求助:TypeError索引问题
解决列表排序时的TypeError问题
嘿,我来帮你搞定这个排序报错的问题!
你遇到的TypeError: list indices must be integers or slices, not str,核心原因是**x['Geometry']['Polygon']是一个列表类型,而不是字典**。你用字符串'0'去索引列表自然会报错——列表只接受整数或者切片作为索引值。
修正后的代码
只需要把索引的'0'改成整数0就可以正常运行了:
textL.sort(key=lambda x: x['Geometry']['Polygon'][0]['Y'])
额外排查小技巧
如果以后再遇到类似的结构混淆问题,可以先打印列表中单个元素的完整结构,确认每个层级的类型:
# 打印第一个元素的结构,明确各层级是列表还是字典 print(textL[0])
这样能帮你快速定位索引方式的错误,避免踩同样的坑~
内容的提问来源于stack exchange,提问作者Bhawan
相关产品推荐
相关产品推荐

