【从零学Python_1.1】“奇怪”的代码行结构

官方文档:词法分析https://docs.python.org/zh-cn/3.10/reference/lexical_analysis.html

名词解释:

Python程序可以拆分为多个逻辑行

1. 逻辑行:可执行的一段逻辑语句,根据显式或隐式行拼接规则,由一个或多个物理行组成。

2. 物理行:一行有效的代码字符,输入结束视为一行的终止。

print('hello world')

3.1 单行注释:以井号"#"开头,作用于当前物理行。

#单行注释

3.2 多行注释:以三个单引号(''')或双引号(""")开始,以三个单引号结束(''')或双引号(""")结束,引号之间的内容为注释内容,单引号开始只能单引号结束,单双引号不能混用,引号不能嵌套。

'''
多行注释
多行注释
'''
"""
多行注释
多行注释
"""

被注释的代码,Python程序不会解析,单纯的给程序员写备注用,注释写的多少完全不影响代码运行。

4. 编码声明:(吐槽 -_-| ,写在注释里的编码声明)

Python默认UTF-8编码格式,可以在Python脚本第一行或第二行的注释里按照指定的正则表达式来声明编码格式,两种写法:"# -*- coding: UTF-8 -*-"或"# vim:fileencoding=UTF-8",注意:如果在第二行声明编码格式,第一行必须是注释。

# 如果在第二行声明编码格式,第一行必须是注释
# -*- coding: utf-8 -*-
# coding = utf-8

5.1 显示拼接行

使用反斜线"\",将一个逻辑行切分成多个物理行。

a = 1
b = 2
c = 3
d = 4
s = a + b + \
    c + d
print(s)

假如不使用反斜线,部分情况下使用圆括号的隐式拼接规则,也可以达到多行效果哦 

a = 1
b = 2
c = 3
d = 4
s = (a + b +
    c + d)
print(s)

 5.2 隐式拼接行:

圆括号"()"、方括号"[]"、花括号"{}" 里的表达式不需要使用反斜杠,换行操作直接将一个逻辑行切分成多个物理行。

names = ["xiaoming",
         "xiaohong",
         "xiaohui"]

拼接行:将一个逻辑行切分成多个物理行,只是便于查看,不影响代码运行

6. 一行多条语句:(不推荐的写法)

在同一行里写多条语句,语句之间使用分号";"分割。类似在一个物理行里写多个逻辑行:

a = 1; b = 2; c = 3; d = 4
s = a + b + c + d

7. 缩进层次:

Python最特别的就是使用空格缩进来表示代码块,不使用花括号 "{} "。

逻辑行的首个非空字符前的空格数,决定了该行的缩进层次;同一个代码块的语句必须是一致的缩进空格数,不一致会报错!

a = 10
if a > 0:
    print(1)    #只有if语句为true,才会执行if的子语句print(1)
    print(2)    #同上
print(3)        #执行完if语句后,会执行if的同级语句print(3)

8. 空白行:

有没有空白行,有多少空白行,都不影响Python程序运行,在函数或类之间插入空白行,方便代码阅读。

猜你喜欢

转载自blog.csdn.net/qq_39108767/article/details/124549125
今日推荐