Python 语句
语句是 Python 解释器解析和处理的基本指令单元。通常解释器按顺序一个接一个的执行语句。
在 REPL 会话中,语句在输入时执行,直到解释器终止。当执行脚本文件时,解释器从文件中读取语句并执行直到遇到文件结尾。
通常每个语句占用一行,语句的结尾由标记行尾的换行符分隔。
1
2
3
4
5
6
|
print ( '真・三國無双' ) 真・三國無双 x = [ '劉備' , '関羽' , '張飛' ] print (x[ 1 : 2 ]) [ '関羽' ] |
续行
假设 Python 代码中的单个语句特别长(包含多个赋值语句)。
1
2
3
4
5
6
7
8
|
person1_age = 42 person2_age = 16 person3_age = 71 someone_is_of_working_age = (person1_age > = 18 and person1_age < = 65 ) or (person2_age > = 18 and person2_age < = 65 ) or (person3_age > = 18 and person3_age < = 65 ) someone_is_of_working_age True |
一个冗长的嵌套列表最好有自己的格式化规范。
1
2
3
4
|
list_ = [[ 1 , 2 , 3 , 4 , 5 ], [ 6 , 7 , 8 , 9 , 10 ], [ 11 , 12 , 13 , 14 , 15 ], [ 16 , 17 , 18 , 19 , 20 ], [ 21 , 22 , 23 , 24 , 25 ]] list_ [[ 1 , 2 , 3 , 4 , 5 ], [ 6 , 7 , 8 , 9 , 10 ], [ 11 , 12 , 13 , 14 , 15 ], [ 16 , 17 , 18 , 19 , 20 ], [ 21 , 22 , 23 , 24 , 25 ]] |
Python 官方的操作指南定义的最大行长应为 79 个字符。
隐式续行的方式
1
2
3
4
5
6
7
8
9
10
|
list_ = [ [ 1 , 2 , 3 , 4 , 5 ], [ 6 , 7 , 8 , 9 , 10 ], [ 11 , 12 , 13 , 14 , 15 ], [ 16 , 17 , 18 , 19 , 20 ], [ 21 , 22 , 23 , 24 , 25 ] ] list_ [[ 1 , 2 , 3 , 4 , 5 ], [ 6 , 7 , 8 , 9 , 10 ], [ 11 , 12 , 13 , 14 , 15 ], [ 16 , 17 , 18 , 19 , 20 ], [ 21 , 22 , 23 , 24 , 25 ]] |
PEP8 明确提倡在适当的时候使用括号优化代码结构。
1
2
3
4
5
6
7
8
|
someone_is_of_working_age = ( (person1_age > = 18 and person1_age < = 65 ) or (person2_age > = 18 and person2_age < = 65 ) or (person3_age > = 18 and person3_age < = 65 ) ) someone_is_of_working_age True |
显式续行的方式
使用反斜杠 ( \ ) 字符作为该行的最后一个字符。
1
2
3
4
5
6
7
8
9
10
|
str_ = \ '真・三國無双' str_ '真・三國無双' str_ = '劉備' + '関羽' \ + '張飛' str_ '劉備関羽張飛' |
每行多语句
如果多个语句用分号 ( ; ) 字符分隔。
1
2
3
4
5
6
7
8
9
10
11
|
x = '劉備' ; y = '関羽' ; z = '張飛' print (x); print (y); print (z) 劉備 関羽 張飛 x, y, z = '劉備' , '関羽' , '張飛' print (x, y, z, sep = '\n' ) 劉備 関羽 張飛 |
注释
哈希字符 ( # ) 表示注释,解释器将忽略从哈希字符到该行末尾的所有内容。
1
2
3
|
list_ = [ '劉備' , '関羽' , '張飛' ] # 这是个注释 list_ [ '劉備' , '関羽' , '張飛' ] |
如果该行的第一个非空白字符是( # ) ,则整行将被忽略。
1
2
|
# 这是个注释 # 这是个注释 |
字符串文字中的哈希字符受到保护,并且不表示注释。
1
2
3
|
str_ = '劉備 関羽 # 張飛' str_ '劉備 関羽 # 張飛' |
其他的一些注释方法
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
# 隐式续行 list_ = [ '劉備' , '関羽' , # 注释 '張飛' , # 注释 ] list_ [ '劉備' , '関羽' , '張飛' ] # 这里是个注释1 # # 这里是个注释2 # 这里是个注释3 """这里是个注释1 这里是个注释2 这里是个注释3 """ |
空白字符
通常将标记彼此分开的是空格,提供空白以提高可读性的空白字符。
字符 | ASCII码 | 文字表达 |
---|---|---|
space | 32( 0x20) | ’ ’ |
tab | 9( 0x9) | ‘\t’ |
newline | 10( 0xa) | ‘\n’ |
Python 解释器通常会忽略空格。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
x = 1 ;y = 2 x + y 3 (x = = 3 ) and (x<y) True list_ = [ '劉備' , '関羽' , '張飛' ] list_ [ '劉備' , '関羽' , '張飛' ] list_ = { '劉備' : 1 , '関羽' : 2 } list_ { '劉備' : 1 , '関羽' : 2 } x,y,z = '劉備' , 14 , 21.1 (x,y,z) ( '劉備' , 14 , 21.1 ) str_ = '劉備' "関羽" '張飛' str_ '劉備関羽張飛' str_ = '関羽' str_ in [ '劉備' , '関羽' , '張飛' ] True |
空格作为缩进
缩进,在一行上第一个标记左侧的空格——具有非常特殊的含义。在大多数解释语言中,语句前的前导空格被忽略。
例如 windows 环境。
1
2
3
4
5
|
C:\Users\Lenovo>hello hello C:\Users\Lenovo> hello hello |
但是在python环境下不可行。
1
2
3
4
5
6
7
8
9
|
print ( '真・三國無双' ) 真・三國無双 print ( '真・三國無双' ) File "<stdin>" , line 1 print ( '真・三國無双' ) ^ IndentationError: unexpected indent |
以上就是Python基础必备之语法结构详解的详细内容,更多关于Python语法结构的资料请关注服务器之家其它相关文章!
原文链接:https://blog.csdn.net/qq_20288327/article/details/124473009