gpt4 book ai didi

python-3.x - 使用列表从字典中消除值

转载 作者:行者123 更新时间:2023-12-04 06:14:15 25 4
gpt4 key购买 nike

我有一个 list

val = ['ed2', 'LL', 'mal', 'DC', 'sp3', 'oo']

还有字典
d = {'A': ['25ed2ish', '5LL45', 'fine', 'LL24'], 'B': ['Q5maDC', 'fern', 'fist', 'Q12malRights']}

我想跳过任何包含在 val 中的任何值的字符串。 .例如 25ed2ish'将被跳过,因为它包含 ed2的字符串。 fine将保留在最终字典中,因为它不以 val 中的任何值结尾.我希望我的最终输出是
d = {'A': ['fine','LL24'], 'B': ['Q5maDC','fern', 'fist']}

来自 keep values from dictionary that are not in list我试过了
result = {}
val = tuple(val)
for key, value in d.items():
result[key] = [s for s in value if not val]

但这导致
{'A': [], 'B': []}

如何调整我的代码以实现我想要的输出?

最佳答案

您没有将值与 val 进行比较在您的代码中的任何地方。尝试这个:

result[key] = [s for s in value if not any(v in s and not s.startswith(v) and not s.endswith(v) for v in val)]

这将导致:
{'A': ['fine', 'LL24'], 'B': ['Q5maDC', 'fern', 'fist']}

关于python-3.x - 使用列表从字典中消除值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57966639/

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