我想使用一个函数,它接受工具Z.管道,但数据输入是一个元组。我知道如何解决它,但我认为在内置的python库或toolz中肯定有一些解决方案,我只是找不到它。你知道吗
示例:
def my_func(a, b):
return a + b
result = pipe(
(10, 20),
my_func,
...,
)
For those unfamiliar with
toolz
,pipe
is something like:def pipe(val, *functions): data = val for fn in functions: data = fn(data) return data
我知道如何解决这个问题,例如:
result = pipe(
(10, 20),
lambda x: my_func(*x),
...,
)
但我觉得这很难看,我希望能够使用某种apply
封装lambda的函数。我这样定义我的apply_
:
from toolz import pipe
def my_func(a, b):
return a + b
def apply_(func):
return lambda x: func(*x)
result = pipe(
(10, 20),
apply_(my_func),
)
print(result)
但这看起来很基本,我几乎确信它一定存在
在内置python库或toolz
包中。。你知道吗
是否有某种形式的apply
包装器像我上面描述的(apply_
),它
我忽略了什么?你知道吗
例如:
输出:
编辑 我最初的解决方案是错误的,但我认为^{}'s ^{} 是正确的。你知道吗
相关问题 更多 >
编程相关推荐