gpt4 book ai didi

python - 在 Ruby 中可以像这样使用 Lambdas 吗?

转载 作者:数据小太阳 更新时间:2023-10-29 08:14:17 26 4
gpt4 key购买 nike

这是我在 Python 中经常做的事情:

simple_call = lambda name: extract(some[fairly][hidden], name)
result1 = simple_call('myname')
result2 = simple_call('yourname')
result3 = simple_call('hisname')

如果您必须从一些复杂的数据结构或一些奇怪的 API 中重复提取一些数据,这真的很方便。

有没有办法在 Ruby 中做同样的事情?

最佳答案

简短的回答:不。最接近的是:

simple_call = lambda {|name| extract(some[:fairly][:hidden], name) }
result1 = simple_call.call("myname")
result2 = simple_call.call("yourname")
result3 = simple_call.call("hisname")

为什么?因为 Ruby 中的括号是可选的。然后,您需要告诉 ruby​​ 调用该方法。例如,在 Python 中你可以这样做:

another_simple_call = simple_call

并且您将 lambda 分配给 another_simple_call。但是在 Ruby 中,没有办法知道您是在分配还是使用零参数调用 simple_call。

关于python - 在 Ruby 中可以像这样使用 Lambdas 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7009048/

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