从Excel到Python数据分析:Pandas、xlwings、openpyxl、Matplotlib的交互与应用
上QQ阅读APP看书,第一时间看更新

2.3 数据类型

在Python中,数值型、字符串型、布尔型是最基本的3种数据类型。应用举例如下:

    rng.font.name= '楷体'
    rng.font.size = 20
    rng.font.bold = True

在以上代码中,“楷体”为字符串型、20为数值型、True为布尔型。

2.3.1 数值型

在Python中,主要支持的数值类型有整数(int)、浮点数(float)、复数(complex)。

2.3.2 字符串型

1.普通字符串

在Python中,单行的字符串可通过单引号('')、双引号("")引起来,二者之间没有差别。多行的字符串可通过三引号(三单引号''''''、三双引号"""""")引起来,二者之间同样没有差别。

在Python中,数值与字符串属于不同的数据类型,二者之间不可以直接相加。应用举例如下:

    '苏州'+512

运行以上代码,返回的错误提示如下:

如果将其中的数值转换为文本字符串,然后相加,则没有问题,代码如下:

    '苏州'+str(512)                #'苏州512'

在以上代码中,内置函数str()用于将对象的值转换为字符串类型。在Python中各类常用内置转换函数见表2-3。

表2-3 Python中各类常用内置转换函数

在Python中,∗操作符用于整型或浮点型数值间表示乘法(例如5∗6,返回的值为30),当作为字符串时代表字符串重复的次数(只能为整型,不能为浮点型)。应用举例如下:

    '苏州'*5                     #'苏州苏州苏州苏州苏州'

更多有关字符串及正则用法可参见本书5.1节(字符串处理)。

2.转义字符

Python中字符串是支持转义字符的。Python中常见的转义字符见表2-4。

表2-4 Python中常见的转义字符

转义字符应用举例,以\n(换行为例),在字符串中增加转义字符\n,代码如下:

    #ch02d003.ipynb
    print('上海','南京','宁波\n','常州','无锡\n','杭州','苏州')

运行以上代码,显示的结果如下:

    上海,南京,宁波
     常州,无锡
     杭州 苏州
3.格式化字符串

在Python中,常采用f-string、format()方法、%操作符这3种方式来格式化字符串,其中f-string比format()方法、%操作符更为便捷好用。

1)f-string

f-string格式字符串时,引号前面使用f或F均可,引号内{}用于存放变量。应用举例如下:

    for i in range(1,4):
       print(f'工作簿{i}.xlsx')

运行以上代码,返回的值如下:

    工作簿1.xlsx
    工作簿2.xlsx
    工作簿3.xlsx

f-string也可以用于输出表达式及计算结果。应用举例,代码如下:

    for i in range(1,4):
        print(f'{i+10 = }')

运行以上代码,返回的值如下:

    i+10 = 11
    i+10 = 12
    i+10 = 13

2)format()方法

format()方法的语法如下:

    '{}'.format()

采用format()方法格式字符串时,较常用的占位字符有s(字符串)、d(十进制整数)、f或F(浮点数)、%(百分比),其他的占位字符有c、e或E、g或G、x或X、b、o。应用举例如下:

    for i in range(1,4):
       print('工作簿{:s}'.format(str(i)))

在以上代码中,先将数据类型由int转换为str,然后对str进行格式化。运行以上代码,返回的值如下:

    工作簿 1
    工作簿 2
    工作簿 3

应用举例,将列表中的整型数据转换为带两位小数的浮点型数据,代码如下:

    for i in range(1,4):
       print('{:.2f}'.format(i))

运行以上代码,返回的值如下:

    1.00
    2.00
    3.00

继续举例,将列表中的整型数据转换为带两位小数的百分位数据,代码如下:

    for i in range(1,4):
       print('{:.2%}'.format(i))

运行以上代码,返回的值如下:

    100.00%
    200.00%
    300.00%

3)%操作符

在Python中也可以使用%操作符来格式化字符串。较常用的占位字符有%s(字符串)、%d或%i(十进制整数)、%f或%F(浮点数)、%%(百分比),其他的占位字符有%c、%e或%E、%x、%r、%o。应用举例,采用%d占位,代码如下:

    for r in range(1,4):
        print('工作簿% d.xlsx' % r)

或者采用%i占位,代码如下:

    for r in range(1,4):
        print('工作簿 % i.xlsx' % r)

运行以上代码,返回的值如下:

    工作簿1.xlsx
    工作簿2.xlsx
    工作簿3.xlsx

2.3.3 布尔型

在Python中,对比运算、逻辑运算的返回值可用布尔型True或False来表示。在参与数值计算时,布尔型可以转换为数值型,例如将True转换为1、将False转换为0。

注意:在Python中,True、False的首字母必须为大写。