替换Erlang中元组中的键

时间:2008-10-01 10:42:29

标签: erlang tuples

我有一个元组列表,例如。 [{1,40},{2,45},{3,54} .... {7,23}]其中1 ... 7是一周中的几天(通过查找日历:day_of_the_week()计算)。所以现在我想将列表更改为[{Mon,40},{Tue,45},{Wed,54} ...... {Sun,23}]。有没有比列表更容易的方法:keyreplace?

2 个答案:

答案 0 :(得分:13)

...或使用不同的语法:

[{httpd_util:day(A), B} || {A,B} <- L]

其中:

L = [{1,40},{2,45},{3,54}....{7,23}]

该构造称为 list comprehension ,读作:

  

“构建{httpd_util:day(A),B}元组列表,其中{A,B}取自列表L

答案 1 :(得分:3)

简单。使用httpd模块中的map和一个方便的工具。

lists:map(fun({A,B}) -> {httpd_util:day(A),B} end, [{1,40},{2,45},{3,54},{7,23}]).