List Erlang:将consult()返回值拆分为子列表
我有一个calls.txt: {约翰、[吉尔、乔、鲍勃]} {吉尔,[鲍勃,乔,鲍勃]} {苏,[吉尔,吉尔,吉尔,鲍勃,吉尔]} {鲍勃,[约翰]} {乔,[苏]} 我有一个函数读取() 调用read()返回5个元组的列表List Erlang:将consult()返回值拆分为子列表,list,erlang,tuples,List,Erlang,Tuples,我有一个calls.txt: {约翰、[吉尔、乔、鲍勃]} {吉尔,[鲍勃,乔,鲍勃]} {苏,[吉尔,吉尔,吉尔,鲍勃,吉尔]} {鲍勃,[约翰]} {乔,[苏]} 我有一个函数读取() 调用read()返回5个元组的列表 {ok,[{john,[jill,joe,bob]}, {jill,[bob,joe,bob]}, {sue,[jill,jill,jill,bob,jill]}, {bob,[john]}, {joe,[sue]}]} 我想将每个元组绑定到一个变量(X1、X2、
{ok,[{john,[jill,joe,bob]},
{jill,[bob,joe,bob]},
{sue,[jill,jill,jill,bob,jill]},
{bob,[john]},
{joe,[sue]}]}
我想将每个元组绑定到一个变量(X1、X2、X3、X4、X5)
我试着把名单分成4个头和一个尾巴
read() ->
List = file:consult("calls.txt"),
[X1,X2,X3,X4|X5] = List.
但是,它给了我一个错误:
** exception error: no match of right hand side value
如何将consult()返回的列表拆分为5个元组?返回值是
{ok,}
因此需要使用的模式是{ok,[X1,X2,X3,X4,X5]}
:
{ok, [X1, X2, X3, X4, X5]} = file:consult("calls.txt").
返回值是
{ok,}
,因此需要使用的模式是{ok,[X1,X2,X3,X4,X5]}
:
{ok, [X1, X2, X3, X4, X5]} = file:consult("calls.txt").