In Python, is it better to use list comprehensions

2019-01-06 17:05发布

Which of the following is better to use and why?

Method 1:

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

Method 2:

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

I tend to lead towards the first as more understandable, but that might just be because I'm new to Python and list comprehensions are still somewhat foreign to me. Is the second way considered more Pythonic? I'm assuming there's no performance difference, but I may be wrong. What would be the advantages and disadvantages of these 2 techniques?

(Code taken from Dive into Python)

7条回答
唯我独甜
2楼-- · 2019-01-06 17:39

list comprehensions are supposed to be run at C level, so if there is huge loop, list comprehensions are good choice.

查看更多
登录 后发表回答