Sar*_*ica 1 python functional-programming
我正在寻找一种功能性的方法来执行以下操作:
lst = []
for k, v in dict.iteritems():
lst.append(my_class(k, v))
return lst
Run Code Online (Sandbox Code Playgroud)
类似的东西
imap(lambda (k,v): my_class(k, v), [...] dict [...])
Run Code Online (Sandbox Code Playgroud)
会很理想,但显然不起作用.
我怎么能这样做?
我们d
是一个字典和f
一个可调用,并给出了starmap
功能,第二个代码可以写成:
from itertools import starmap
starmap(f, d.iteritems())
Run Code Online (Sandbox Code Playgroud)
或者匹配您的代码: starmap(my_class, dict.iteritems())
实际上回答你的问题,功能方式是:
return list(starmap(my_class, dict.iteritems))
Run Code Online (Sandbox Code Playgroud)