我想知道是否有更“简洁”或pythonic的做法。
foo = range(10)
def bar (num):
if num > 5:
print "Num >5"
map(bar, food)
这是我正在做的事情的粗略表示,除了foo
是对象ID的列表而bar
真的是bar.delay
,因为它是Celery任务。
现在这个工作,但它产生了结果列表的副作用(全部是None
)。除了for循环之外还有其他方法吗?
答案 0 :(得分:3)
循环有什么问题?:
for item in foo:
bar(item)
当然,如果你想获得幻想,你可以制作一个生成器gen = (bar(item) for item in foo)
或使用itertools.imap
,然后使用itertools中的consume
配方......