给出一个带有一个元组的列表:
[{4,1,144}]
Run Code Online (Sandbox Code Playgroud)
如何提取元组的第一个元素:
element(1,lists:nth(1,L))
Run Code Online (Sandbox Code Playgroud)
你有一个更简单的解决方案吗?
0xA*_*xAX 34
试试这个:
1> A = [{3,1,1444}].
[{3,1,1444}]
2> [{X, _, _}] = A.
[{3,1,1444}]
3> X.
3
4>
Run Code Online (Sandbox Code Playgroud)
E D*_*que 27
鉴于你得到了你所陈述的内容,一个包含一个元组的列表就更容易了
element(1, hd(L)).
Run Code Online (Sandbox Code Playgroud)
(像shk建议的模式匹配变体可能更好,取决于上下文.
如果您想将一些语义嵌入到元组中,您也可以考虑使用记录语法
-record(x, {y, z}).
1> A = #x{y=b, z=c}.
2> A#x.y.
b
Run Code Online (Sandbox Code Playgroud)
所有记录实际上都是元组,您不必担心该元组中元素的顺序,也不必担心添加/删除元素。