我有以下代码用于在嵌套列表中添加项:
list1 = [[1, 2, 3],[4, 5, 6]]
total = 0
for i in range(0, len(list1)):
print 'len(list1)', len(list1)
print 'i=', i
for j in range(0, len(list1[i])):
print 'j=', j
print 'list1i', list1[i]
total += list1[i][j]
print 'sub-total=', total
print 'Final Total:', total
实施后,将运行:
len(list1) 2
i= 0
j- 0
list1i [1, 2, 3]
sub-total= 1
j- 1
list1i [1, 2, 3]
sub-total= 3
j- 2
list1i [1, 2, 3]
sub-total= 6
len(list1) 2
i= 1
j- 0
list1i [4, 5, 6]
sub-total= 10
j- 1
list1i [4, 5, 6]
sub-total= 15
j- 2
list1i [4, 5, 6]
sub-total= 21
Final Total: 21
行得通,但我不明白为什么。比如,为什么一开始i=0?“我”不应该是列表中的元素吗?我以为这就是你运行for循环的结果。和j一样。还有,我和j是什么关系?我已经看了几个小时的代码和视频搜索,似乎找不到一个解释。如果有人能为我解释一下这段代码的内容,那真的会很有帮助。非常感谢。你知道吗
i是主列表中的索引;j是每个子列表中的索引。索引和元素本身的区别是
与
这两种方法都可以,这取决于处理每个元素时是否需要知道其索引。你知道吗
将} 的结果,该结果给出从第一个到最后一个的数字列表,但不包括最后一个。你知道吗
i
转换为^{i
和j
是这些列表的索引。它将此视为一个数组,通常是Python新手试图应用其旧语言技能时留下的,其中i
和j
表示二维数组中的x
和y
值。你知道吗相反,python中更好的方法是:
甚至
为什么一开始i=0?“我”不应该是列表中的元素吗?
语句
for i in range(0, len(list1)):
将外部for循环中的i
设置为从0递增到(1-列表长度)。i
的值用作list1
元素的索引。你知道吗注意,
list1
的长度是2,即它有两个元素,它们本身就是列表。第一个元素是[1,2,3]
,第二个元素是[4,5,6]
。你知道吗上述解释同样适用于
j
。在您提交的代码中,j
在外循环的第一次迭代中从0递增到1-(长度list1[0]
),在外循环的第二次迭代中从0递增到1-(长度list1[1]
)。i
和j
的组合用于索引嵌套列表中存储的实际数字。你知道吗从您的问题来看,您似乎希望
i
和j
的值引用列表的实际元素。您可以这样做,但语法会略有不同,如下所示:相关问题 更多 >
编程相关推荐