【问题标题】:"List indices must be integers not list" reoccurring error“列表索引必须是整数而不是列表”重复出现的错误
【发布时间】:2013-10-15 15:27:17
【问题描述】:

有人可以帮我处理这个 python 3 代码吗?我一直有它的问题。我查看了python wiki,但仍然无法弄清楚问题所在。 (我习惯使用 LUA,所以我倾向于以类似的方式编写代码。)

我遇到问题的代码部分是:

if SVDARA[a][0] == coordxy and SVDARA[a][1] == coordxy:

出现错误:列表索引必须是整数而不是列表。

我正在尝试使用 FOR 循环来过滤列表以查找前两个(整数)值相同的列表(在列表中)。

【问题讨论】:

  • 您应该发布回溯。但是python列表索引必须是整数,所以a可能不是整数。

标签: list if-statement for-loop python-3.x


【解决方案1】:

您应该发布您的for 循环,但从它的外观我可以猜出哪里出了问题。而不是

for a in SVDARA:

你应该使用

for a in xrange(len(SVDARA)):
    if SVDARA[a][0] == coordxy and SVDARA[a][1] == coordxy:
        # Do something

a 将是一个整数,并将在数组中保存 POSITION 而不是单元格的内容。

【讨论】:

  • 除非SVDARA[a]确实需要改,否则for a in SVDARA: if a[0] == coordxy and a[1] == coordxy:会更好
  • 非常感谢!我只是在使用“For a in SVDARA”。我打算大量使用我的代码,所以这真的很有帮助!
猜你喜欢
  • 1970-01-01
  • 2015-05-03
  • 2015-09-02
  • 2018-01-03
  • 1970-01-01
  • 1970-01-01
  • 2018-01-21
  • 1970-01-01
  • 2012-03-11
相关资源
最近更新 更多