Chinaunix首页 | 论坛 | 博客
  • 博客访问: 741700
  • 博文数量: 130
  • 博客积分: 2951
  • 博客等级: 少校
  • 技术积分: 1875
  • 用 户 组: 普通用户
  • 注册时间: 2010-03-04 18:32
文章分类

全部博文(130)

文章存档

2013年(1)

2012年(129)

分类: Python/Ruby

2012-03-13 15:07:22

假设有个列表L:
1>L = [1,2,3,4,5].
[1,2,3,4,5]
现在想把列表中每个元素加倍,
2>lists:map(fun(X) -> 2*X end, L).
[2,4,6,8,10]

现在有个更简练的方式:
4> [2*X || X <- L ].
[2,4,6,8,10]
记号[ F(X) || X <- L ]代表“由F(X)组成的列表,其中X是取值于列表L”. 因此, [2*X || X <- L]表示“列表L中每一个元素X乘以2后的列表”。又如:
7> Buy=[{oranges,4}, {newspaper,1},{apples,10}, {pears,6},{milk,3}].
[{oranges,4},{newspaper,1},{apples,10},{pears,6},{milk,3}]
8> [{Name,2*Number} || {Name, Number} <- Buy].
[{oranges,8},{newspaper,2},{apples,20},{pears,12},{milk,6}]

阅读(1833) | 评论(0) | 转发(0) |
0

上一篇:Erlang - fun

下一篇:Erlang - record

给主人留下些什么吧!~~