加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

在Perl中是否有一些像zip和fold这样的函数?

发布时间:2020-12-15 23:30:48 所属栏目:大数据 来源:网络整理
导读:我想在perl中使用一些函数,如 “zip”,“fold”和 “map”. (就像在Haskell中一样.)我找到了地图并且效果很好.那么,是否有拉链和折叠?非常感谢你. 解决方法 我在我的模块 List::Gen中实现了许多这些函数(甚至是类似Haskell的函数) use List::Gen qw(zip red
我想在perl中使用一些函数,如 “zip”,“fold”和 “map”. (就像在Haskell中一样.)我找到了地图并且效果很好.那么,是否有拉链和折叠?非常感谢你.

解决方法

我在我的模块 List::Gen中实现了许多这些函数(甚至是类似Haskell的函数)

use List::Gen qw(zip reduce);

my @list = zip [1 .. 4],['a' .. 'd'];

my $str = reduce {$a . $b} @list;

say $str; # 1a2b3c4d

或者使用glob函数来构建范围:

use List::Gen 'glob';

say <1 .. 4>->zip(<a .. d>)->reduce('$a.$b'); # 1a2b3c4d

使用 – > reduce(‘.’)或 – > reduce(sub {$a.$b})也可以.

或者如果你打高尔夫球:

say <[.]>->(<1..4>|<a..d>);

或者对于Haskell版本,请参阅List::Gen::Haskell

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读