Python机器学习原理与算法实现
上QQ阅读APP看书,第一时间看更新

1.4.3 Python的基本数据类型

Python的基本数据类型包括Numbers(数字)、String(字符串)、布尔型,如图1.37所示。

图1.37 Python的数据类型

1.数字

数字就是数值,Python 3中常用的数字数据类型包括整型(int)、浮点型(float)、复数(complex)。其中,int表示数据为整数数值,包括0和正负整数,没有小数部分,如果某数据中仅有整数部分,则应设置为int;float表示数据为浮点数,浮点数包括整数部分和小数部分,如果某数据中含有小数部分,则应设置为float;complex为复数,由实部和虚部组成,用j表示虚部。具体来说:

整型(int):在Python中整数的位数可以扩展到可用内存的限制位数。针对非整数,用户可调用int(x)函数将x转换为整数。比如:

     int(3.1415926)  # 对3.1415926取整,运行结果为:3

浮点型(float):浮点型数字包括整数部分和小数部分,也可以用科学记数法来表示,用户可调用float()函数将整数和字符串转换成浮点数。比如:

     float(3) # 将数字3转换成浮点数,运行结果为:3.0
     float('3.1415926') # 将字符串'3.1415926'转换成浮点数。运行结果为:3.1415926

复数(complex):复数由实部和虚部组成,用j表示虚部。比如:

     complex(1,3)#输出复数(1+3j),函数括号内第1个数字1表示实部,第2个数字3表示虚部。运行结果为:(1+3j)

2.字符串

字符串就是连续的字符序列。在Python中,字符串通常使用单引号、双引号、三引号作为起止符(即引起来),其中单引号、双引号的字符串必须在同一行,而三引号的字符串可以分布在多行,可参见1.3.2节print函数中的相应介绍。在Python中,还有一些转义字符搭配字符串使用。转义字符就是那些以反斜杠(\)开头的字符。Python中的转义字符及其作用如表1.4所示。

表1.4 Python中的转义字符及其作用

如果用户不希望字符串中的转义字符发挥作用,也就是说期望使用的就是原字符,则在字符串之前加上字母r或者R即可,字符串中的反斜杠(\)也会不被视作转义符。

示例如下,在Spyder代码编辑区内输入以下代码并逐行运行,可在IPython控制台看到如下的运行结果:

     print('对酒当歌\n人生几何')  # \n 换行符,将光标移到下一行开头
     对酒当歌
     人生几何
     print('对酒当歌\r人生几何')  # \r 回车符,删掉本行之前的内容,将光标移到本行开头
     人生几何
     print('对酒当歌\t人生几何')  # \t 制表符,即Tab键,一般相当于四个空格
     对酒当歌   人生几何
     print('对酒当歌\b人生几何')  # \b 退格符,将光标位置移到前一位
     对酒当人生几何
     print('对酒当歌\\人生几何')  # \\ 反斜杠,两个连续的反斜杠表示反斜杠本身
     对酒当歌\人生几何
     print('对酒当歌\'人生几何')  # \' 单引号
     对酒当歌'人生几何
     print('对酒当歌\"人生几何')  # \" 双引号
     对酒当歌"人生几何
     print('对酒当歌\人生几何')   # \ 续行符
     对酒当歌\人生几何
     print(r"对酒当歌\n人生几何")  # 原字符
     对酒当歌\n人生几何

3.布尔型

布尔型就是在逻辑判断中表示真或假的值。在Python中,布尔型变量有且仅有两个取值,为True和False,这两个值也是保留字。布尔值也可以转换为数值,True对应数值1,False对应数值0。Python把False、None、数值中的0(包括0、0.0、虚数0)、空字符串、空元组、空列表、空字典都看作False,其他数值和非空字符串都看作True。示例如下,在Spyder代码编辑区内输入以下代码并逐行运行,可在IPython控制台看到如下的运行结果:

     type(True)      # 查看True的类型
     bool
     type(False)     # 查看False的类型
     bool
     True and True         # 逻辑运算中的“与”运算,True and True
     True
     True and False        # 逻辑运算中的“与”运算,True and False
     False
     False and True        # 逻辑运算中的“与”运算,False and True
     False
     False and False       # 逻辑运算中的“与”运算,False and False
     False
     True or True          # 逻辑运算中的“或”运算,True or True
     True
     True or False         # 逻辑运算中的“或”运算,True or False
     True
     False or True         # 逻辑运算中的“或”运算,False or True
     True
     False or False        # 逻辑运算中的“或”运算,False or False
     False
     not True              # 逻辑运算中的“非”运算,not True
     False
     not False             # 逻辑运算中的“非”运算,not False
     True
     6>=3            # 逻辑运算表达式
     True
     type(6>=3)      # 查看逻辑运算表达式计算结果的数据类型
     bool

4.数据类型转换

在很多情况下,我们需要对数据类型进行转换以满足特定函数的要求,比如将字符串类型的数据转换成数字型的数据,以便参与数学运算等。常用的数据类型转换函数及其作用如表1.5所示。

表1.5 常用的数据类型转换函数及其作用