[0]在len(a [0])中表示什么?

时间:2017-06-01 15:19:39

标签: python-2.7 list loops parameters

所以我有这个代码,我发现但我无法理解[0]的功能或实际上的任何数字。

a = [[1,2],[3,4]]
b = [[6,3],[5,9]]
t = [[0,0],[0,0]]

for i in range(len(a)):

    for j in range(len(b[0])):

        for k in range(len(b)):
             t[i][j] += a[i][k] * b[k][j]
print t

我对python真的很新,很抱歉,如果这是一个愚蠢的问题。

2 个答案:

答案 0 :(得分:0)

a是列表时,a[0]将返回a的第一个元素(列表从0开始)。
在您的情况下,a[0]=[1,2]b[0]=[6,3]b[1]=[5,9]a[0][0]=1

答案 1 :(得分:0)

尝试一些你不理解的东西(并在你去的时候阅读文档)。

鉴于

a = [[1,2],[3,4]]
b = [[6,3],[5,9]]
t = [[0,0],[0,0]]

我们得到了

>>> len(a)
2

所以,a有两件事,我们可以通过索引到a来访问 如果我们走得太远,我们就会收到错误:

>>> a[0]
[1, 2]
>>> a[1]
[3, 4]
>>> a[2]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list index out of range

您询问len(a[0]),但代码显示为len(b[0])a[0][1, 2],所以列出了两件事,实际上是

>>> len(a[0])
2

甚至

>>> len(b[0])
2

您有一些列表清单。索引到它们将为您提供一个列表。

回顾一下,a[0]是一个列表[1,2]。我们可以获得其中的任何一个元素,如果我们走得太远,我们会得到一个错误:

>>> a[0][0]
1
>>> a[0][1]
2
>>> a[0][2]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list index out of range

代码正在进行矩阵乘法,看看你得到了什么t

>>> print t
[[16, 21], [38, 45]]

As matrix

您可以将每个列表列表视为矩阵的一部分,第一个索引给出行,第二个列给出列:

rows and columns