gpt4 book ai didi

python - 列表理解困惑

转载 作者:行者123 更新时间:2023-11-28 20:38:53 25 4
gpt4 key购买 nike

我对自己遇到的一个问题感到有点困惑,想知道是否有人可以提供帮助(在我看来这似乎微不足道,所以我希望这是真的!)

基本上,我通过以下列表理解按列表过滤:

depfilt = [s for s in department if 'author' not in s]

(其中 department 有 154 个元素,生成的 depfilt 有 72 个元素)

现在,我还有一个包含 154 个元素 (subj) 的单独 iD 值列表,该列表的索引与 department 中的索引匹配。我想在过滤过程后保留正确的 iD 值,因此使用了以下代码行:

subfilt = [s for s in subj if 'author' not in department[subj.index(s)]]

在我看来,我觉得这应该有效,但 subfilt 实际上返回了 106 个列表元素,而不是 72 个。

有人知道为什么吗?

谢谢

最佳答案

在重复值的情况下使用enumerate而不是index

[s for i, s in enumerate(subj) if 'author' not in department[i]]

关于python - 列表理解困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39855525/

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