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

时间:2014-09-15 11:30:11

标签: 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)

只是评论一下,我已经实现了另一个打印偶数的功能(所以请不要对其他实现进行评论)。我只需要帮助这个。

1 个答案:

答案 0 :(得分:2)

应该{​​{1}}而不是even == even_odd(X)。列表推导有两种类型的&#34;子句&#34;:用<-映射到列表的那些,以及使用不包含{的保护或布尔表达式过滤掉不需要的组合的那些{1}}。

(第三个:使用<-从二进制文件中提取字节;但是很少使用它。)