购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2 基础语法

2.2.1 基础知识

1.编码

默认情况下,Python 3源码文件以UTF-8编码,所有字符串都是 unicode 字符串。

2.标识符

第一个字符必须是字母表中的字母或下画线;标识符的其他部分由字母、数字和下画线组成;标识符对大小写敏感。在Python 3中,非ASCII标识符也是允许的了。

3.保留字

保留字即关键字,我们不能把它们用作任何标识符名称。Python 标准库提供了keyword module,可以输出当前版本的所有关键字,如图2-3所示。

图2-3 输出当前版本的所有关键字

4.注释

Python中单行注释以#开头,多行注释用三个单引号(''')或者三个双引号(""")将注释括起来。

5.行与缩进

Python采用严格的缩进来标识程序的结构。缩进指每一行代码开始前的空白区域,被用来标识各个代码块之间的层次结构。缩进可以用Tab键完成,也可以用固定数目的空格,建议采用4个空格完成缩进。不同代码块缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。

6.数据类型

Python中的数有三种类型:整数、浮点数和复数。

整数,如1。

浮点数,如1.23、3E-2。

复数,如1+2j、1.1+2.2j。

7.字符串

字符串是编程中常用的数据类型,用于表示一段连续的文本或字符序列。在 Python中使用字符串时,可以用单引号(')、双引号(")或三引号('''或""")把字符串括起来。其中,单引号和双引号在定义字符串时具有完全相同的用途与功能。而三引号('''或""")则用于指定一个多行字符串。

在字符串中,有些字符具有特殊的含义,如换行符(\n)、制表符(\t)等。这些字符被称为转义字符,因为它们可以通过在字符前加上反斜杠(\)来“转义”字符原本的特殊含义。然而,在某些情况下,我们可能不希望字符串中的反斜杠被解释为转义字符。为了解决这个问题,Python 引入了自然字符串的概念。通过在字符串前加上 r 或 R,Python会忽略其中的反斜杠,将其视为普通字符的一部分。例如,r"this is a line with\n"将会输出 this is a line with\n,而不会进行换行。

此外,Python 还支持处理 Unicode 字符串,这是一种能够表示世界上几乎所有语言的字符的编码方式。在 Python 中,只需在字符串前加上 u 或 U 前缀,即可将其定义为Unicode字符串。例如,u"这是一个Unicode字符串" 就是一个Unicode字符串。

2.2.2 基本程序编写

1.Python的环境变量

在Linux/Unix操作系统下,一般默认Python版本为2.x,可以将Python 3.x安装在/usr/local/python3目录中。安装完成后,可以将路径/usr/local/python3/bin添加到Linux/Unix操作系统的环境变量中,这样就可以通过shell终端输入“python3”命令来启动Python 3。

在Windows操作系统下,可以通过以下命令来设置Python的环境变量,假设Python安装在 C:\python3目录下,如图2-4设置环境变量。

图2-4 Windows操作系统的环境变量设置

2.交互式编程

可以在命令提示符中输入“python”命令来启动Python解释器,进入交互式编程。

在Python提示符中,输入以下语句,然后按回车键查看运行效果:

当键入一个多行结构时,续行是必需的。如图2-5所示,if 语句是多行代码。

图2-5 多行代码图

如果需要退出交互式编程,输入exit()函数或quit()函数即可。

3.脚本式编程

将如下代码复制至hello.py文件:

通过python hello.py命令执行该脚本,输出结果为“Hello,Python!”。

2.2.3 条件语句

Python 条件语句是通过对一个或多个条件的判断(True 或者 False)来决定执行哪个代码块的。

Python中,if语句是最简单的条件判断语句,一般形式如下:

如果“condition_1”为 True,将执行“statement_block_1”语句块;如果“condition_1”为 False,将判断“condition_2”。如果“condition_2”为 True,将执行“statement_block_2”语句块;如果“condition_2”为False,将执行“statement_block_3”语句块。

Python中用elif代替了else if,所以if语句的关键字为if-elif-else。

注意:

(1)每个条件后面要使用冒号(:),表示接下来是满足条件后要执行的语句块;

(2)使用缩进来划分语句块,相同缩进数的语句表示语句具有相同的层级关系;

(3)在Python中没有switch-case语句。

实例IfTest.py:

这段程序用来检查名字是否以 lihua 结尾,如果不是,则输出“Hello,stranger”;如果是,则继续检查是否以“Mr”开头。如果符合,输出“Hello,Mr.lihua”;如果以“Mrs”开头,则输出“Hello,Mrs.lihua”;如果既不是以“Mr”开头,也不是以“Mrs”开头,则输出“Hello,lihua”。值得注意的是,上面程序中的 elif 与 else 可以根据实际程序需要来决定是否省略,并不是必需的。

2.2.4 循环语句

循环语句就是在程序中重复执行某种操作,Python 中的循环语句只有 while 和 for两种。

1.while循环

while循环语句如下:

同样需要注意冒号和缩进。另外,在 Python 中,没有 do...while 循环。以下实例使用了while循环来打印1~10:

2.for循环

while 语句非常灵活,可用于在条件为真时反复执行代码块。这在通常情况下很好,但有时想输出一个数组或列表中的元素,就显得不太方便。在这种情况下,可使用 for语句:

或者

鉴于遍历特定范围内的数是一种常见的任务,Python 提供了一个创建范围的内置函数。

输出结果:

[0,1,2,3,4]

范围类似于切片,包含起始位置,但不包含结束位置。在很多情况下,范围的起始位置为0。实际上,如果只提供了一个位置,把这个位置视为结束位置,并假定起始位置为0,范围函数也是可以做到的。

使用下面的程序打印数1~10:

注意,相比前面使用的while循环,这些代码要紧凑得多。因此,只要能够使用for循环,就不要使用while循环。 IrPk3GL5Yipb3Bt8cN7ngt3R1umO51d0ovkkRG+wamZV4dDnKa0Jn2gsTpIXOPt+

点击中间区域
呼出菜单
上一章
目录
下一章
×