Подтвердить что ты не робот

Извлечение элементов кортежей

Для одного списка с одним кортежем:

[{4,1,144}]

Как извлечь первый элемент кортежа:

element(1,lists:nth(1,L))

У вас есть более простое решение?

4b9b3361

Ответ 1

Попробуйте следующее:

1> A = [{3,1,1444}].
[{3,1,1444}]
2> [{X, _, _}] = A.
[{3,1,1444}]
3> X.
3
4> 

Ответ 2

Учитывая, что вы получаете именно то, что заявляете, список с одним кортежем, еще проще:

element(1, hd(L)).

(Вариант соответствия шаблонов, например, предложенный shk, возможно, даже лучше, в зависимости от контекста.

Ответ 3

вы также можете рассмотреть использование синтаксиса записей, если вы хотите, чтобы семантика была встроена в ваши кортежи

-record(x, {y, z}).

1> A = #x{y=b, z=c}.
2> A#x.y.
b

все записи на самом деле являются кортежами, и вам не нужно беспокоиться о порядке элементов в этом кортеже и о добавлении/удалении элементов.