我是python中的初学者,我想访问2d矩阵中的每个元素。 我正在使用此代码。
[[0, 1, 2], [1, 2, 3], [2, 3, 4]]
Traceback (most recent call last):
File "C:/Users/--/--/1B.py", line 10, in <module>
print a[0,2]
TypeError: list indices must be integers, not tuple
但是当我在[0,2]处执行元素时,它给了我一个错误。
{{1}}
任何人都可以帮助我吗?任何帮助都会受到重视。
答案 0 :(得分:1)
您必须a[0][2]
,而不是a[0,2]
。
您得到的错误是因为Python不会将0,2
识别为有效索引。这并不奇怪 - 索引应该只是纯整数,而不是<integer>, <integer>
。 Python解释器将它们识别为两个独立的整数,但不知道如何处理它们。
相反,你真正想要的是这样思考:
执行a[0]
会在a
中为您提供第一个列表。
正在执行a[0][2]
访问a
中的第一个列表,然后访问 列表中的第二个元素。
如果您执行了b = a[0]
然后调用了b[2]
,那么您将获得完全相同的行为 - 因为这是您a[0][2]
时发生的事情。这也是通常如何在其他语言中访问二维数组的方式,因此在这方面事先了解如何使用它们是很好的。