我刚开始用Python编程,如果希望列表中的值相同,我不知道如何更改索引。我想要的是索引改变,所以它会打印0,1,2,但我得到的只是0,0,0。我试图改变列表的值,使它们不同,然后我得到了我想要的输出。但我不明白为什么我使用什么样的值很重要,为什么索引会关心列表中的内容
a = 0
b = 0
c = 0
d = 0
e = 0
f = 0
justTesting = [[a, b], [c, d], [e, f]]
for item in justTesting:
something = justTesting.index(item)
print (something)
我使用的是python3.6.1,如果这是个问题的话
因为每个列表(循环中指定的“item”)都是[0,0],这意味着行:
将在迭代期间为每个“项”查找列表中列表[0,0]的第一个实例。由于列表中的每个项目都是[0,0],因此第一个实例位于位置0
我准备了另一个例子来说明这一点
结果如下:
阅读documentation:
index
的默认值是标识第一个出现。您还需要使用start
参数,并在运行时进行更新:只搜索最新查找之后的列表因为你的列表只包含
[0, 0]
所以基本上,如果我们用它们的值替换所有变量,我们得到:
并且使用
.index(item)
将返回第一个出现的item
(如果有的话)。因为item
总是总是[0, 0]
,而且它第一次出现在justTesting[0]
,所以你总是得到0!请尝试更改每个列表中的值,然后重试。例如,这是有效的:返回:
如果结果在一条线上
Try it here!
相关问题 更多 >
编程相关推荐