list - Erlang-我的列表理解中的编码功能似乎不起作用?

标签 list function erlang list-comprehension

%% 函数even_print(List),获取一个列表并返回一个仅包含偶数的列表。函数 Even_odd(X) 接受一个整数并判断它是偶数还是奇数。

 even_print(List) ->
           [X||X<-List, even<-even_odd(X)].

我不明白为什么会收到此错误:

3> seq_erlang:even_print([2,3,4]).              
** exception error: no function clause matching 
                    seq_erlang:'-even_print2/1-lc$^1/1-1-'(even) (seq_erlang.erl, line 154)

只是为了发表评论,我已经实现了另一个可以很好地打印偶数的函数(所以请不要对其他实现进行评论)。我只需要这方面的帮助。

最佳答案

应该是even == even_odd(X)而不是使用<- 。列表推导式有两种类型的“子句”:那些用 <- 映射列表的子句。 ,以及使用不包含 <- 的保护或 bool 表达式过滤掉不需要的组合的组合。 .

(第三种方法:使用 <= 从二进制文件中提取字节;但这种方法很少使用。)

关于list - Erlang-我的列表理解中的编码功能似乎不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25847059/

相关文章:

Python - 排序列表

ruby - 如何制作 Ruby 1.8 小写非拉丁字符?

Erlang/OTP - 计时应用程序

java - 什么是 Erlang 替代品?

architecture - 用功能语言实现ESB(企业服务总线)

c++ - 堆栈列表调试断言失败 C++

Python3 - 将复杂的字符串转换为列表/字典

java - 如何创建对象列表的摘要?

javascript - 如何使 JavaScript 函数在页面的所有元素上运行

javascript - 匿名函数在 jQuery/Javascript 中如何工作?