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