在循环中,Python如何决定哪些语句属于循环?
例如,在C语言中,可以编写:
for(int i=0;i<=n;n++)
{ // start of block
Statment1
} // end of block
Statement2
但是在下面的Python代码中
for i in range(5):
statement1
statement2
我的意图是statement2
不在循环中。
Python将如何标识此块的结尾?使用制表符空格?
我不知道会发生什么,特别是如果有嵌套循环。
Tags:
Python使用缩进来标识块,特定块中的所有语句都需要缩进到同一级别,尽管可以使用任意数量的缩进,但是特定块中的所有语句都需要具有相同的缩进级别。因此在您的示例中,
Statement 2
确实位于for循环的外部,缩进级别相同,因此它与for循环位于同一块中。需要注意的一点是,即使允许对不同的块使用不同级别的缩进(包括混合制表符和空格,但不应这样做,而且始终应使用相同的缩进量),也就是说,如果将一个块缩进为前一个块的4个空格,理想情况下你应该总是那样缩进。
PEP-0008 (The style guide for Python)建议使用4个空格作为缩进。
这确实是通过缩进来完成的。所以在你的例子中,
statement 1
在for循环中,statement 2
不在。你可以使用空格和制表符作为缩进,只要你在代码中的任何地方都使用相同的东西。嵌套for循环的示例:
print j
在j-for-loop中完成。print i
在i-for-loop中完成。Done!
最后只打印一次。相关问题 更多 >
编程相关推荐