列表中的列表
Lists in a list
我对 Python 很陌生。我有一个包含更多列表的列表,但仅限于二维(例如 List[a][b])。现在,对于每个值 [a],我想访问某个值 [b](在本例中为 10)。现在只打印每个值 List[a][10] 就足够了。我试过了:
for rec in List:
print List[rec][10]
这给了我错误 "TypeError: list indices must be integers, not list"。但是,如果我只是尝试 "print List[0][10]" 它会给我想要的值。在我的 for 循环中,rec 不是一个整数吗?我该如何解决这个问题?
其他信息:我正在使用 Python 2.4.3 以便能够使用允许我访问 GIS 数据(我的列表)的 shapefile 库。
您需要使用:
for rec in List:
print rec[10]
或
for i range(len(List)):
print List[i][10]
for rec in List:
print rec[10]
应该可以。
rec 在你的例子中不是一个整数,它是列表的第一项。为了将它用作整数,您必须在 for 循环中添加范围,例如 "for rec in range(0,len(List))"
我对 Python 很陌生。我有一个包含更多列表的列表,但仅限于二维(例如 List[a][b])。现在,对于每个值 [a],我想访问某个值 [b](在本例中为 10)。现在只打印每个值 List[a][10] 就足够了。我试过了:
for rec in List:
print List[rec][10]
这给了我错误 "TypeError: list indices must be integers, not list"。但是,如果我只是尝试 "print List[0][10]" 它会给我想要的值。在我的 for 循环中,rec 不是一个整数吗?我该如何解决这个问题?
其他信息:我正在使用 Python 2.4.3 以便能够使用允许我访问 GIS 数据(我的列表)的 shapefile 库。
您需要使用:
for rec in List:
print rec[10]
或
for i range(len(List)):
print List[i][10]
for rec in List:
print rec[10]
应该可以。
rec 在你的例子中不是一个整数,它是列表的第一项。为了将它用作整数,您必须在 for 循环中添加范围,例如 "for rec in range(0,len(List))"