gpt4 book ai didi

python - 使用正确的索引比较列表中的条目

转载 作者:行者123 更新时间:2023-12-01 07:50:06 25 4
gpt4 key购买 nike

我有一个列表列表,我正在尝试将内部列表中的条目与其他条目进行比较。
例如:列表是 my_list = [[4,6,4,3], [4,5,5,3], [4,1,1,3]]我希望得到的输出是 [4,'x','x',3]也就是说,如果 i 中的条目内部列表中的索引在所有内部列表中都相同我返回条目否则我返回 'x' .
我的代码中的索引有问题,因为 i=2我得到的循环回合 rows[4][j]这超出了索引。我通常不确定这里的外循环或如何修复条件中的索引。

def my_function(my_list):
lst = []
for i, entry in enumerate(my_list):
for j, elem in enumerate(entry):
if my_list[i][j] == my_list[i+1][j] and my_list[i+1][j] == my_list[i+2][j]:
lst.append(my_lists[i][j])
else:
lst.append('x')
return lst

最佳答案

您应该尽可能避免操作索引。要迭代多个列表,请使用 zip .

要测试列表中的所有值是否相等,您可以创建一个 set ,并检查它是否只包含一个值。

my_list = [[4,6,4,3], [4,5,5,3], [4,1,1,3]]
out = [zipped[0] if len(set(zipped)) == 1 else 'X' for zipped in zip(*my_list)]
print(out)
# [4, 'X', 'X', 3]

关于python - 使用正确的索引比较列表中的条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59435284/

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