19

我一直在搜索谷歌和这个网站一段时间,但我似乎无法找到关于这个主题的直接答案。

Python中的空格是什么?我知道这与每行缩进有关,但我不确定如何使用它。它是如何工作的?

4

5 回答 5

11

空格用于表示块。在其他语言中,大括号 ({}) 很常见。当您缩进时,它成为上一行的子代。除了缩进之外,父级后面还有一个冒号。

im_a_parent:
    im_a_child:
        im_a_grandchild
    im_another_child:
        im_another_grand_child

在我的头顶上,def, if, elif, else, try, except, finally, with, for, while, 和class所有起始块。要结束一个块,你只需简单的 outdent,你就会有兄弟姐妹。在上面im_a_childim_another_child是兄弟姐妹。

于 2012-12-14T18:48:56.833 回答
9

空白仅表示用于间距的字符,并具有“空”表示。在 python 的上下文中,它表示制表符和空格(它可能还包括奇异的 unicode 空格,但不要使用它们)。最终参考在这里:http ://docs.python.org/2/reference/lexical_analysis.html#indentation

我不确定如何使用它。

将它放在要缩进的行的前面。如果您混合使用空格和制表符,您可能会看到奇怪的结果,因此请坚持使用其中一种。(python社区通常遵循PEP8风格,规定缩进四个空格)。

您需要在每个冒号后创建一个新的缩进级别:

for x in range(0, 50):
    print x
    print 2*x

print x

在这段代码中,前两个print语句在语句的“内部”,for因为它们的缩进比包含for. 第三个print在外面,因为它的缩进小于前一个(非空白)行。

如果你没有一致地缩进/取消缩进,你会得到缩进错误。此外,所有复合语句(即带有冒号的语句)都可以在同一行提供正文,因此不需要缩进,但正文必须由单个语句组成。

最后,某些语句,例如lambda以冒号为特征,但不能以多行块作为主体。

于 2012-12-14T18:49:42.170 回答
4

它充当大括号。我们必须在整个程序中保持空格的数量一致。

示例 1:

def main():
     print "we are in main function"
     print "print 2nd line"

main()

结果:

我们在主要功能
打印第二行

示例 2:

def main():
    print "we are in main function"
print "print 2nd line"

main()

结果:

打印第 2 行
我们在 main 函数中

在这里,在第一个程序中,两个语句都在 main 函数下,因为它们都有相同数量的空格,而在第二个程序中,第一行稍后打印,因为 main 函数在第二行之后调用 注意 - 第二行没有空格,所以它独立于主函数。

于 2016-05-27T05:40:13.033 回答
3
something
{
 something1
 something2
}
something3

在 Python 中

Something
    something1
    something2
something3
于 2015-05-02T16:06:44.317 回答
0

每种编程语言都有自己的代码结构方式。
每当你编写一段代码时,它必须以一种所有人都能理解的方式组织起来。

通常用于条件和类并定义定义。
它代表父母、孩子和孙子,甚至更远。

例子:

def example()
    print "name"
    print "my name"
example()

在这里你可以说example()是父母,其他人是孩子。

于 2017-05-05T08:24:31.937 回答