【发布时间】:2017-04-22 11:08:44
【问题描述】:
您能否告诉我,当我在循环列表和使用时需要索引和值时,为什么它被认为是“非 Pythonic”:
a = [1,2,3]
for i in range(len(a)):
# i is the idx
# a[i] is the value
而是建议使用
for idx, val in enumerate(a):
print idx, val
谁定义了“pythonic”,为什么后者更好?我的意思是在可读性方面并没有那么好,是吗!?
提前致谢
【问题讨论】:
-
我的意思是在可读性方面并没有那么好,是吗!?实际上是这样,因为第一个示例使用了额外的代码行
-
投票重新开放。它在某种程度上确实取决于意见,但有充分的理由更喜欢第二个版本,如@ThiefMaster 的回答所示。
-
谢谢,很高兴听到我在第一篇文章中并没有真正违反规则 :-)
标签: python for-loop coding-style