gpt4 book ai didi

python - 用 map 组合函数

转载 作者:太空狗 更新时间:2023-10-30 02:28:00 24 4
gpt4 key购买 nike

我正在使用两个映射调用将 '0''1' 的字符串转换为 bool 值序列:

>>> a, b = '10'
>>> a, b = map(int, (a, b))
>>> a, b = map(bool, (a, b))
>>> a, b
(True, False)

如何只用一张 map 做到这一点?

最佳答案

Python 没有函数组合运算符,因此没有内置的方法来执行此操作。在这种特定情况下,将 map 调用减少到一行的最简单方法是使用 lambda:

a, b = map(lambda x: bool(int(x)), (a, b))

你可以写一个更通用的 compose function很容易,而是使用它:

def compose(*fns):
return reduce(lambda f, g: lambda x: f(g(x)), fns, lambda x: x)

a, b = map(compose(bool, int), (a, b))

但老实说,后一种方法在这里似乎有些矫枉过正。

关于python - 用 map 组合函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38463918/

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