第 1 章 语法概述

1.1 格式框架

1.1.1 缩进

Python 语言采用严格的 “缩进” 来表明程序的格式框架。缩进用来表示代码之间的包含和层次关系,它是 Python 语言中表明程序框架的唯一手段。PEP 8 指南建议使用四个空格表示一个缩进,这既提高了可读性,又留下了足够的多级缩进空间。

在字处理文档中,通常被广泛使用的是制表符,而不是使用空格来完成缩进。对于字处理文档来说,这样做的效果很好,但混合使用制表符和空格会让 Python 解释器感到迷惑。好在每款编辑器都提供了一种功能,可以将输入的制表符转换为指定数量的空格。因此,在编写代码时绝对应该使用制表符键,但一定要对编辑器进行设置,使其在文档中插入空格而不是制表符。

1.1.2 注释

注释是代码中的辅助性文字,用以在程序中使用自然语言进行解释说明。Python 语言采用 # 表示一行注释的开始,多行注释需要在每行开始都使用 #。PEP 8 建议注释的行长不应超过 72 字符。

严格地讲,Python 并未提供多行注释。但可以使用成对的三个单引号 ''' 或双引号 """ 来实现多行注释的功能。事实上, '''""" 在 Python 中用来完成文档注释。

1.1.3 续行符

Python 程序是逐行编写的,每行代码的长度并无限制。但单行代码太长会不利于阅读,PEP 8 建议每行不超过 80 个字符。

在 Python 中可以使用续行符将单行代码分割成多行代码,Python 中的续行符为 \,续行符后应直接换行。列表、元组、字典中的元素之间不使用续行符也可以直接换行。

在大多数的开发软件中,都可以设置一个视觉标志,通常是一条垂直参考线,让你知道不能越过的界限在什么地方。

1.1.4 空行

要将程序的不同部分分开,可使用空行。空行与代码缩进不同,它并不是 Python 语法的一部分。即使书写时不插入空行,也不会出现语法错误。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。因此,空行也是程序代码的重要部分。

通常,函数之间或类中的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。

1.2 基本语法元素

1.2.1 变量与常量

变量是保存和表示数据值的一种语法元素。变量的值可以改变,能够通过赋值方式被修改。变量的标识符通常全部使用小写字母,单词之间使用下划线连接。

常量是一种特殊的变量,其值在程序的整个生命周期内保持不变。通常使用全部大写变量名的方式来指出应将该变量视为常量。相比于直接使用字面值而言,为常量指定一个有意义的名称,可以更清晰地表达出它的用途。

1.2.2 标识符

Python 语言允许使用大写字母、小写字母、数字、下划线和汉字等字符及其组合给变量、函数、类等命名,即标识符。标识符的长度没有限制,首字符不能是数字,中间不能出现空格。

注意:Python 对大小写敏感,例如 message 和 Message 是两个不同的标识符。

1.2.3 保留字

保留字,也称为关键字,指被编程语言内部定义并保留使用的标识符。程序员编写程序不能定义与保留字相同的标识符。每种程序设计语言都有一套保留字,保留字一般用来构成程序的整体框架、表达关键值和具有结构性的复杂语义等。

1.3 基本语句元素

1.3.1 表达式

产生或计算新数据值的代码片段称为表达式。表达式类似数学中的计算公式,运算后产生运算结果,运算结果的类型由操作符或运算符决定。表达式一般由数据和操作符等构成,是构成 Python 语句的重要部分。

1.3.2 赋值语句

Python 语言中,= 表示 “赋值”,即将等号右侧的值计算后将结果值赋给左侧变量,包含等号 = 的语句称为 “赋值语句”。格式为:

<变量> = <表达式>

还可以使用同步赋值语句同时给多个变量赋值,格式为:

<变量 1>, …, <变量 N> = <表达式 1>, …, <表达式 N>

1.3.3 分支与循环

分支语句的作用是根据判断条件选择程序执行路径,包括单分支、二分支和多分支。

循环语句与分支语句控制程序执行类似,它的作用是根据判断条件确定一段程序是否再次执行一次或者多次。循环语句包括遍历循环和条件循环。

1.4 数据类型概述

1.4.1 数字类型

Python 中的数字类型有整数、浮点数、复数,分别和数学中的整数、小数、复数相对应。不同的数字类型可以直接计算。可以把 IDLE 当作一个计算器使用:

>>> 1 + 2
3
>>> 3 - 2
1
>>> 2 * 3
6
>>> 3 / 2
1.5
>>> 3 ** 2
9
>>> 3 ** 0.5
1.7320508075688772
>>> 2 + 3*4
14
>>> (2 + 3) * 4
20

1.4.2 字符串

字符串是字符的序列表示,根据字符串的内容多少分为单行字符串和多行字符串。单行字符串由一对单引号 ' 或双引号 " 作为边界来表示,多行字符串由一对三单引号 ''' 或三双引号 """ 作为边界来表示。

在 Python 中,单引号和双引号都用来表示字符串。这种设计的好处是可以在字符串中很轻松地包含引号和撇号:

>>> print('I tlod my friend, "Python is interesting."')
I tlod my friend, "Python is interesting."
>>> print("She's my best friend.")
She's my best friend.

还有一种特殊的字符串是转义字符。Python 语言的转义符为 \,其与后面相邻的一个字符共同组成了新的含义。如:\n 表示换行、\\ 表示反斜杠、\' 表示单引号、\" 表示双引号、\t 表示制表符。

字符串是一个字符序列。字符串最左端位置标记为 0,向右依次增加;最右端位置标记为 -1,向左依次递减。对字符串中某个字符的检索被称为索引。索引的使用方式为:

<字符串或字符串变量>[序号]
>>> 'hello'[0]
'h'
>>> 'hello'[3]
'l'
>>> 'hello'[-2]
'l'

Python 中的字符串以 Unicode 编码存储,字符串的英文字符和中文字符都算作 1 个字符。

对字符串中某个子串或区间的检索被称为切片。切片的使用方式为:

<字符串或字符串变量>[N: M]

切片将会返回字符串的第 N 个到第 M 个字符,不包含末尾的 M 个字符。

>>> 'hello'[1: 3]
'el'
>>> 'hello'[1:] # 检索区间到最后一个字符结束
'ello'
>>> 'hello'[: 3] # 检索区间从 0 开始
'hel'
>>> 'hello'[:] # 返回字符串副本
'hello'

此外,还可以在切片时指定步长:

<字符串或字符串变量>[N: M: K]
>>> 'hello'[::2]
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值