AI时代Python金融大数据分析实战:ChatGPT让金融大数据分析插上翅膀
上QQ阅读APP看书,第一时间看更新

2.4 Python语法基础

本节主要介绍Python中一些基础的语法,其中包括标识符、关键字、常量、变量、表达式、语句和模块等内容。

2.4.1 标识符

标识符就是由程序员指定的变量、常量、函数、属性、类、模块和包等的名字。构成标识符的字符均有一定的规范,Python语言中标识符的命名规则如下:

·区分大小写,Myname与myname是两个不同的标识符;

·首字符可以是下画线“_”或字母,但不能是数字;

·除首字符外其他字符,可以是下画线“_”、字母和数字;

·关键字不能作为标识符;

·不能将Python内置函数作为自己的标识符。

例如,身高、identifier、userName、User_Name、_sys_val等为合法的标识符,中文“身高”命名的变量是合法的,而2mail、room#、$Name和class为非法的标识符。注意,#和$不能构成标识符。

2.4.2 关键字

关键字是类似于标识符的保留字符序列,是由语言本身定义好的,Python语言中有33个关键字。其中只有3个,即False、None和True首字母大写,其他的全部小写。具体内容如表2-1所示。

表2-1 Python关键字

2.4.3 变量声明

在Python中声明变量时不需要指定它的数据类型,只要给一个标识符赋值就声明了变量,示例代码如下。

代码解释如下。

· 代码第①至③行分别声明了三个变量,这些变量声明不需要指定数据类型,赋给它什么数值,它就是该类型变量了。

·代码第④行是给y变量赋布尔值True,虽然y已经保存了整数类型20,但它也可以接收其他类型数据。

2.4.4 语句

Python代码是由关键字、标识符、表达式和语句等内容构成的,语句是代码的重要组成部分。语句关注代码的执行过程,如if语句、for语句和while语句等。在Python语言中,一行代码表示一条语句,语句结束可以加分号,也可以省略分号。示例代码如下。

代码解释如下。

·代码第①行在语句介绍中使用了分号,但是实际编程时通常省略分号。

·代码第②行有两条语句,但从编程规范的角度讲,这样编写代码是不规范的,Python官方推荐一行代码只有一条语句。

·代码第③行采用链式赋值语句,同时将10赋值给a、b、c三个变量。

2.4.5 Python代码块

在if、for和while等语句包含多条代码时,这些代码会放在一个代码块中。Python语言中代码块与C和Java等语言差别很大,Python是通过缩进界定代码块的,缩进级别相同的代码位于相同的代码块中。示例代码如下。

代码解释如下。

·代码第①行和第②行是同一个缩进级别,它们在相同的代码块中。

·代码第③行和第④行不是同一个缩进级别,它们在不同的代码块中。

提示

一个缩进级别一般用一个制表符(Tab)或4个空格表示,考虑到不同的编辑器制表符显示的宽度不同,大部分编程语言规范推荐使用4个空格表示一个缩进级别。

2.4.6 模块

Python中一个模块就是一个“.py”文件,模块是保存代码的最小单位,模块中可以声明变量、常量、函数、属性和类等Python程序元素。一个模块提供可以访问另外一个模块的程序元素。

下面通过示例介绍如何创建和使用模块,首先在“*.ipynb”(Jupyter Notebook文件)的同级当前目录下,使用记事本等文本编辑工具创建一个module1.py文件,并编辑module1.py文件,代码如下。

代码解释如下。

·代码第①行是一个注释行,用于指定脚本文件的编码格式。在这个例子中,它指定使用UTF-8 编码处理脚本文件中的字符。

其他代码不再赘述。

那么如何在Jupyter Notebook代码文件中使用module1模块呢?可以使用import语句导入module1模块,具体代码如下。

代码解释如下。

· 代码第①行使用import<模块名>方式导入模块所有代码元素(包括:变量、函数、类等)。访问代码元素时需要加“模块名.”,见代码第④行module1.y,module1是模块名,y是模块module1中的变量。

·代码第②行使用from<模块名>import<代码元素>方式指定模块中特定的代码元素。

·代码第③行访问当前模块变量y。

·代码第⑤行访问module1模块变量z。需要注意,当z变量在当前模块中也存在时,z不能导入,即z是当前模块中的变量。

在Jupyter Notebook中执行上述代码,结果如图2-10所示。

图2-10 代码结果