比如说
cast = ["Barney Stinson", "Robin Scherbatsky", "Ted Mosby", "Lily Aldrin", "Marshall Eriksen"]
heights = [72, 68, 72, 66, 76]
//loop
for i, name in enumerate(cast):
cast[i] = name + " " + str(heights[i])
print(cast)
如果我缩进代码以将其包含在for循环中,print语句将返回输出的多个副本,并且顺序完全混乱。但是,当我使用print语句而不使用缩进时,当我按顺序返回名称和高度时,一切都很好。显然,循环是问题所在,但这不是我第一次遇到这种情况,我希望有一个全面深入的解释。谢谢
像C、Go、Java等语言使用大括号(
{}
)来分隔代码块,而Python使用缩进所以这个代码
将首先遍历
cast
并重新分配其元素(缩进块),然后再转到下一个语句,在本例中是print
另一方面,这个代码
将为
for
循环的每个迭代打印整个cast
缩进是Python核心设计的一部分
相关问题 更多 >
编程相关推荐