python - TypeError: list indices must be integers or slices, not str, for osm_road in self.get_osm_objs()['road']:
问题描述
当我运行这段代码
def diff(self):
for osm_road in self.get_osm_objs()['road']:
osm_points = self.get_keypoints(osm_road.id)
for mdm_road in self.get_mdm_road():
mdm_points = mdm_road.shape
if match().macth_by_mutiPoints(mdm_points,osm_points):
if osm_road.tags['LINE_TYPE'] == "RoadCenter" and mdm_road.TravelDirection_type != 2:
print(osm_road.tags)
self.output_info('mxf中的poi{}和mdm中的poi{}的type不一致'.format(osm_road.id,mdm_road.id.count))
if osm_road.tags['LINE_TYPE'] == "RoadCenter" and mdm_road.length != 2:
self.output_info('mxf中的poi{}和mdm中的poi{}的type不一致'.format(osm_road.id,mdm_road.id.count))
if osm_road.tags['LINE_TYPE'] == "RoadCenter" and mdm_road.road_type != 2:
self.output_info('mxf中的poi{}和mdm中的poi{}的type不一致'.format(osm_road.id,mdm_road.id.count))
if __name__ == "__main__":
ROAD_diff("msd_1.0.xml", "mdm_1598425741707.db", "result.txt").diff()
我收到这个错误
for osm_road in self.get_osm_objs()['road']:
TypeError: list indices must be integers or slices, not str
我如何解决它?
解决方案
推荐阅读
- c++ - 用于获取抛出异常详细信息的现代 C++ 机制
- pandas - DatabaseError:提供的绑定数量不正确
- java - 有没有办法用我的 CompletableFuture 代码解决这个内存泄漏?
- json - 如何在 jsx 中映射具有图像和文本信息的 json 字符串
- neo4j - 使用 4.0-enterprise docker 时,Neo4j 浏览器似乎迷失了方向
- reactjs - POST 请求在提交时使用 fetch 和 async/await
- node.js - 在 Raspberry PI 4 上安装画布时出错
- javascript - 如何使用 swup js 切换到页面顶部
- fonts - 如何使用 Power BI 创建多页子报表的分页报表?
- c# - .Net Core 页面未缓存并出现“ERR_CACHE_MISS”错误页面单击浏览器后退按钮