这是一个例子,我正在努力实现:
CASE I
>Fn = fun(X) -> {X, 3} end.
>A = {{1,2}, {3, 4}, Fn(8)}.
>{{1,2},{3,4},{8,3}}
这很好用。但是在多个元组的情况下
CASE II
>Fn2 = fun(X) -> {X, 3},{7,5} end.
>A1 = {{1,2}, {3, 4}, Fn2(8)}.
>{{1,2},{3,4},{7,5}}
请建议我解决方案,以便我可以为 CASE II
取得以下结果>{{1,2},{3,4},{8, 3}, {7,5}}
答案 0 :(得分:6)
首先,解释在第二种情况下会发生什么:当你写Fn2 = fun(X) -> {X, 3},{7,5} end
时,它意味着“给定X
,创建并丢弃元组{X, 3}
,然后返回元组{{1} }。
你似乎也混淆了元组和列表。元组不是这样使用的;它们用于固定尺寸的结构。如果您真的想要获得一个列表,那很简单:
{7, 5}
答案 1 :(得分:3)
我认为你需要使用list([...])而不是tuple({...}):
> Fn3 = fun(X) -> [{X, 3},{7,5}] end.
> [{1,2}, {3, 4}| Fn3(8)].
[{1,2},{3,4},{8,3},{7,5}]