函数式编程 – Mathematica相当于Ruby的注入
发布时间:2020-12-17 01:22:40 所属栏目:百科 来源:网络整理
导读:是否有像 Ruby注入的Mathematica函数?例如,如果我想要列表中元素的产品,在Ruby中我可以写: list.inject(1) { |prod,el| prod * el } 我发现我可以在Mathematica中使用Product: Apply[Product,list] 然而,这对我来说不够通用(如果我不只是想要产品或数字的
是否有像
Ruby注入的Mathematica函数?例如,如果我想要列表中元素的产品,在Ruby中我可以写:
list.inject(1) { |prod,el| prod * el } 我发现我可以在Mathematica中使用Product: Apply[Product,list] 然而,这对我来说不够通用(如果我不只是想要产品或数字的总和).与注射最接近的是什么? 解决方法
相当于
Fold.
我认为这通常被称为“减少” – 无论如何,这就是Python名称. 翻译你的例子: Fold[#1*#2&,1,list] #1 *#2&是一个二进制lambda函数,它的参数倍增. Fold[Times,list] 或者当然只是将Times应用于列表: Apply[Times,list] 或者,简而言之: Times @@ list 注意:您使用Product而不是Times的问题中的版本将不起作用. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- ruby-on-rails – 添加一个简单的链接来设置Rail
- 字符数组和整数数组之间的区别
- swift – com.apple.iTunes AEDeterminePermissi
- CefSharp.Wpf 添加flash与cookie支持
- org.xml.sax.SAXParseException: Content is not
- 带get的数据结构,返回constexpr(C)
- 数组 – 带有C struct指针/数组字段的Haskell Da
- c – OpenGL / GLSL / GLM – Skybox像第三人一样
- jsonview json查看工具
- 从txt中读入数据到数组中(fscanf)的实现代码
热点阅读