Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
List 列表理解语法_List_Erlang_List Comprehension - Fatal编程技术网

List 列表理解语法

List 列表理解语法,list,erlang,list-comprehension,List,Erlang,List Comprehension,我在Erlang中看到了以下代码: [X-$0 || X<-someFun()] [X-$0 | | X该代码所做的是从someFun()获取输出(需要返回列表),对于列表中的每个元素,它将元素的值赋给变量X,然后从该值中减去字符0的ASCII值。结果列表就是整个表达式的值 在实践中(我自己已经写了几十次这段代码),它所做的是假设someFun/0是一个函数,它返回一个只包含数字的字符串,然后将该字符串转换成一个数字列表。所以,若someFun()返回“12345”,此列表理解的结果是[

我在Erlang中看到了以下代码:

[X-$0 || X<-someFun()]

[X-$0 | | X该代码所做的是从
someFun()
获取输出(需要返回列表),对于列表中的每个元素,它将元素的值赋给变量
X
,然后从该值中减去字符
0
的ASCII值。结果列表就是整个表达式的值

在实践中(我自己已经写了几十次这段代码),它所做的是假设
someFun/0
是一个函数,它返回一个只包含数字的字符串,然后将该字符串转换成一个数字列表。所以,若
someFun()
返回“
12345
”,此列表理解的结果是
[1,2,3,4,5]

如果您熟悉
map
函数的概念(如MapReduce),那么现在听起来应该很熟悉了

这个wikibooks页面看起来像是对Erlang列表理解的一个很好的介绍:


Joe Armstrong的书“Programming Erlang”,来自实用书架,()也很好地涵盖了列表理解(以及其他与Erlang相关的内容)。优秀的书,强烈推荐,等等。

列表理解的常规文档页面在第6.22节和第3节中

这两个都在上(单击左侧菜单栏上的Erlang Programming文件夹)

Erlang文档太棒了-只是它的布局有点不合理