3.1.1 数字类型

Python 3支持int(整数)、float(浮点数)、bool(布尔值)、complex(复数)4种数字类型。

注意:在Python 2中是没有bool的,用数字0表示False,用1表示True。在Python 3中,把False和True定义成了关键字,但它们的值还是0和1,可以和数字相加。

1.int

下面是整数的例子:

    >>> a = 666688
    >>> a
    666688

可以使用十六进制数值来表示整数。十六进制整数的表示法是在数字之前加上0x,如0x80120000、0x100010100L。例如:

    >>> a=0x6EEEFFFF
    >>> a
    1861156863

2.float

浮点数的表示法可以使用小数点,也可以使用指数的类型。指数符号可以使用字母e或E来表示,指数可以使用+/-符号,也可以在指数数值前加上数字0,还可以在整数前加上数字0。例如:

    6.66  12.  .007  1e100  3.14E-10  1e010  08.1

使用float()内置函数可以将整数数据类型转换为浮点数数据类型。例如:

    >>> float(660)
    660.0

3.bool

Python的布尔值包括True和False,只与整数中的1和0有对应关系。例如:

    >>> True==1
    True
    >>> True==2
    False
    >>> False==0
    True
    >>> False==-1
    False

这里利用符号(==)判断左右两边是否绝对相等。

4.complex

复数的表示法是使用双精度浮点数来表示实数与虚数的部分,复数的符号可以使用字母j或J。例如:

    1.5 + 0.5j  1J  2 + 1e100j  3.14e-10j

数值之间可以通过运算符进行运算操作。例如:

    >>> 50 + 40  # 加法
    90
    >>> 50 - 40  # 减法
    10
    >>> 30 * 15  # 乘法
    450
    >>> 1/2      # 除法,得到一个浮点数
    0.5
    >>> 1//2     # 除法,得到一个整数
    0
    >>> 15 % 2   # 取余
    1
    >>> 2 ** 10  # 乘方
    1024

在进行数字运算时,需要注意以下问题:

(1)数值的除法(/)总是返回一个浮点数,要获取整数使用//操作符。

(2)在整数和浮点数混合计算时,Python会把整数转换为浮点数。

【例3.1】计算商品的总价格和平均价格(源代码\ch03\3.1.py)。

    name="家用电器"                             #保存商品类别的姓名
    print ("商品的类别是:"+name)
    m1= 3866                                    #保存家用电器洗衣机的价格
    #使用内置的str()函数可以将数值转化为字符串
    print("家用电器洗衣机的价格是:"+str(m1))
    m2 = 4866                                   #保存家用电器电冰箱的价格
    print("家用电器电冰箱的价格是:"+ str(m2))
    m3 = 8668                                   #保存家用电器空调的价格
    print("家用电器空调的价格是:"+ str(m3))
    sum= m1+m2+m3                               #保存家用电器的总价格
    print("家用电器的总价格是:"+str(sum))
    avg= sum/3                                  #保存家用电器的平均价格
    print("家用电器的平均价格是:"+str(avg))

程序运行结果如图3-1所示。

图3-1 程序运行结果