小编典典

在Python中,使用列表推导或for-each循环会更好吗?

python

以下哪个更适合使用,为什么?

方法1:

for k, v in os.environ.items():
       print "%s=%s" % (k, v)

方法2:

print "\n".join(["%s=%s" % (k, v) 
   for k,v in os.environ.items()])

我倾向于通向第一个更容易理解,但这可能只是因为我是Python的新手,并且列表理解对我来说仍然有些陌生。第二种方法是否更像Pythonic?我假设没有性能差异,但是我可能是错的。这两种技术的优缺点是什么?

(从 Dive到Python的代码


阅读 183

收藏
2020-12-20

共1个答案

小编典典

如果迭代是出于其副作用而进行的(如“打印”示例中所示),则循环更加清晰。

如果执行迭代以构建复合值,则列表推导通常更具可读性。

2020-12-20