gpt4 book ai didi

python - 匹配列表索引

转载 作者:太空宇宙 更新时间:2023-11-04 05:56:33 24 4
gpt4 key购买 nike

我有两个列表,它们具有相同的元素。

a=[1,2,3,4,5,6,7,8,9]
b=[1,2,3,4,5,6,7,8,9]

如果我这样写:

a[::]==b[::]
>>>True

所以这意味着所有元素索引都是相等的。但我想打乱 b 直到 b 的索引与 a 的索引不同。

I tried this:

import random
while a[::]==b[::]:
random.shuffle(b)

我认为它会随机播放 b 直到所有索引都不同,但这不是我所期望的。一直至少有一个元素具有相同的索引。我该怎么办?

最佳答案

a[::] == b[::] - 或者简单地 a == b - 检查是否所有 元素相等,这就是为什么您的 while 结束(可能在第一步)。

你想要一些不同的东西,即它们没有是相等的,IOW 没有任何是相等的。

我们可以使用anyzip 来实现这个条件:

>>> a=[1,2,3,4,5,6,7,8,9]
>>> b=[1,2,3,4,5,6,7,8,9]
>>> import random
>>> while any(x==y for x,y in zip(a,b)):
... random.shuffle(b)
...
>>> a
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> b
[6, 5, 1, 2, 7, 8, 9, 4, 3]

关于python - 匹配列表索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27466458/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com