gpt4 book ai didi

python - 使用 Python 的 map 进行逻辑索引

转载 作者:行者123 更新时间:2023-11-28 19:41:35 25 4
gpt4 key购买 nike

TL DR:如何才能最好地使用 map 根据逻辑索引过滤列表?

给定一个列表:

values = ['1', '2', '3', '5', 'N/A', '5']

我想映射以下函数并使用结果来过滤我的列表。我可以使用 filter 和其他方法来做到这一点,但主要是想了解是否可以仅使用 map 来完成。

函数:

def is_int(val):
try:
x = int(val)
return True
except ValueError:
return False

尝试的解决方案:

[x for x in list(map(is_int, values)) if x is False]

上面给出了我需要的值。但是,它不返回索引或允许逻辑索引。我曾尝试做其他荒谬的事情,例如:

[values[x] for x  in list(map(is_int, values)) if x is False]

以及许多其他显然不起作用的方法。

我认为我能做的:

values[[x for x in list(map(is_int, values)) if x is False]]

预期结果:

['N/A']

最佳答案

[v for v in values if not is_int(v)]

如果你有一个并行的 bool 值列表:

[v for v, b in zip(values, [is_int(x) for x in values]) if not b]

关于python - 使用 Python 的 map 进行逻辑索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56952213/

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