Re: [问题]不用for循环寻找阵列中只出现过一次的资料

楼主: retard (Baby baby~~)   2014-05-12 04:57:28
这应该是个 map reduce 的题目吧
l = [2, 3, 4, 5, 0, 1, 2, 3, 4, 2, 3, 5]
def func_map(a):
return [set([a]), set([a])]
def func_reduce(am, bm):
uaset, aset = am
ubset, bset = bm
unset = (uaset - bset) | (ubset - aset)
nset = aset | bset
return [unset, nset]
reduce(func_reduce, map(func_map, l))
先把值 map 成 uniq set, all number set
再 reduce 成 uniq set, all number set
作者: apua (Apua)   2014-05-12 11:29:00
出现啦!!!``set([a])`` 可以写成 ``{a}````return [unset, nset]`` 可以写成 ``return unset, nset``会更精简些

Links booklink

Contact Us: admin [ a t ] ucptt.com