python使用空格和空行需注意的地方

余生长醉 提交于 2020-02-02 11:43:10

在写Python脚本时,发现空格对齐问题还是很繁琐的,早上花了一点时间稍微探索了一下空格问题。主要是针对个人常用的场景,后面遇到一些新的在补上吧。

1.空行

  • 函数体内外有无空行都是允许的,不过最好养成良好习惯,能不加空格就不加空格吧。
def space_test():
    print("hello world1")

    print("hello world2")
    a = 3
    if (a > 2):

        print("I'm armwind")

上面的例子,实际运行下来是没有问题的,不过如果下面这句print("hello world2")如果没有对齐的话,仍然会报错的,使用时尽量4个空格对齐吧。

2.冒号

  • 定义函数时,函数名后面的冒号前后有无空格 不影响
  • 关键字后面的冒号,前面有无空格 不影响
  • 截取字符串时,方括号中的冒号前后空格 不影响

下面例子中的空格留的有些夸张,不过应该可以说明问题了。在写代码的时候各自所好吧,本人一般在冒号前面加一个空格。
在这里插入图片描述
运行结果:

D:\test\python>python space2.py
a=5
a>2,name:arm

3.变量左右

  • 函数体内部定义变量时,一定要对齐(一般都是4个空格不会出问题,出问题在解决),下面这个定义变量没有对齐肯定会报错
def test():
 a = 5
  • 函数体外的变量定义时,一定要顶格写不要留空白,这也是一种良好的习惯。下面就犯了这个错误
  a = 5
print("hello world")

上面两种情况运行后都会报没有对齐的问题,运行结结果:

D:\test\python>python valate.py
File “valate.py”, line 1
a = 5
^
IndentationError: unexpected indent

4.#号

目前测试时,‘#’号左右有无空格都无所谓,而且非4字节对齐都没有问题。不过为了减少麻烦,还是对齐书写吧。

#test1
 #test1
 
 #this is test
def test():
 #test 1

5.二元运算符

二元运算符前后加不加空格,加几个空格 都是没有影响

a = 3

if    a > 1 :
    print("hello armwind")
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!