首页 > 解决方案 > 指定未知索引的最佳方法是什么?

问题描述

我用这个从谷歌表中提取数据:

for x in range(0, 3):
    gmap.marker(latitude[x], longitude[x], title=boxnumber[x])

每列中只有三个值要提取。所以,上面的代码运行良好。但是,如果我有四个这样的:

for x in range(0, 4):

我的列表索引超出范围...问题是,我不知道我的第二个数字/列表索引是什么。这个数字明天可能是 25,或者可能是 60。处理这个问题的最佳方法是什么?例如,如果我的列表中有 50,我怎样才能让 for 循环自动调用 50?有没有办法调用(0,#ofavailable)?

标签: pythonpython-3.xdata-structures

解决方案


用于len()获取列表的长度(我假设它们的长度都相同)。

for x in range(len(latitude)):
    gmap.marker(latitude[x], longitude[x], title=boxnumber[x])

或者将所有列表压缩在一起:

for lat, lon, title in zip(latitude, longitude, boxnumber):
    gmap.marker(lat, lon, title=title)

您还应该考虑将所有内容放入一个字典或元组列表中,而不是为每个值单独列出。


推荐阅读