首页 > 解决方案 > 如何从 erlang 中的元组列表中访问一个值并从中创建一个新列表?

问题描述

问题是获取列表中每个元组的第一个元素的列表。Erlang 让我很难受。如何在erlang的列表中动态添加元素?

I tried to read the list of tuples and store it into another list to get the first element of each tuple in the list.

  getBankList([BankData|T]) ->
    {BankName, Resource}=T,
    createList(BankName),
    getBankList(T).

createList(Name)->
  List = [],
 List2 = [Name|list1].

[{jill,450},
{joe,157},
{bob,100},
{sue,125},
{pat,344}].

这些是元组,我需要的列表为:[jill,joe,bob,sue,pat]

标签: erlang

解决方案


您可以使用该lists:unzip/1函数将一对元组列表拆分为两个列表的元组,一个用于第一个元素,一个用于第二个元素:

{Names, _Amounts} = lists:unzip([{jill,450}, {joe,157}, {bob,100}, {sue,125}, {pat,344}]).

结果Names变量绑定到[jill,joe,bob,sue,pat]


推荐阅读