给定一个具有一个元组的列表:
[{4,1,144}]
如何在列表中提取元组的第一个元素:
element(1,lists:nth(1,L))
您有更简单的解决方案吗?
relj7zay1#
试试这个:
1> A = [{3,1,1444}]. [{3,1,1444}] 2> [{X, _, _}] = A. [{3,1,1444}] 3> X. 3 4>
9rygscc12#
如果你得到的就是你所陈述的,一个只有一个元组的列表,那么更简单的方法是(使用元素/2)
element(1, hd(L)).
像shk建议的模式匹配变体可能更好,这取决于上下文。
trnvg8h33#
如果您希望将一些语义嵌入到元组中,也可以考虑使用记录语法
-record(x, {y, z}). 1> A = #x{y=b, z=c}. 2> A#x.y. b
所有的记录实际上都是元组,你不必担心元组中元素的顺序,也不必担心添加/删除元素。
3条答案
按热度按时间relj7zay1#
试试这个:
9rygscc12#
如果你得到的就是你所陈述的,一个只有一个元组的列表,那么更简单的方法是(使用元素/2)
像shk建议的模式匹配变体可能更好,这取决于上下文。
trnvg8h33#
如果您希望将一些语义嵌入到元组中,也可以考虑使用记录语法
所有的记录实际上都是元组,你不必担心元组中元素的顺序,也不必担心添加/删除元素。