python——数字类型(int,float,bool,complex)的创建,使用,内存分配剖析

基本数据类型概述


1、Python3 中有六个标准的数据类型:

Number(数字)
String(字符串)
List(列表)
Tuple(元组)
Set(集合)
Dictionary(字典)
Python3 的六个标准数据类型中:

不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。
相关的函数介绍:

Type 函数:a, b, c, d = 20, 5.5, True, 4+3j
>>> print(type(a), type(b), type(c), type(d))

<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>

Isinstance 函数:

区别:type函数将父类与子类视为同一类型,isinstance函数将父类与子类视为同一类型,即将一个父类与一个子类作为参数判断时返回true。

2、 Number基本数据类型

Python3 支持 int、float、bool、complex(复数)。

注意:在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2中的Long

Python 3中bool 是 int 的子类,True 和 False 可以和数字相加, True==1、False==0 会返回 True,但可以通过 is 来判断。在 Python2 中是没有布尔型的,它用数字 0 表示 False,用 1 表示 True。

数字类型详细介绍

1、test01()函数为int类型的变量的创建,以及创建之后的内存分配使用情况。注释写的很详细就不再赘述。
def test01():
    # 数据类型,整型的使用
    # 1、创建
    num1 = 100  # 直接赋值创建,
    '''
    type()函数返回变量的类型
    '''
    print("验证结果1:")
    print(type(num1))
    print(num1)
    '''
    使用int()函数将其他类型的数据转换成int类型
    '''
    str2 = '100'
    num2 = int(str2)
    print(type(num2))
    print(num2)

    # 特例1、赋值创建多个int变量
    '''
    id()函数的使用
    作用:返回变量的地址
    使用id()函数验证连续开辟的三个值相同的整型变量共享同一个地址空间,
    '''
    num3 = num4 = num5 = 100
    print("验证结果2:")
    print('地址:' + str(id(num3)) + '值:' + str(num3))
    print('地址:' + str(id(num4)) + '值:' + str(num4))
    print('地址:' + str(id(num5)) + '值:' + str(num5))
    # 易错点,print()函数使用➕号连接只能是
    # str类型,不是str类型需要使用str函数转换

    '''
    验证分开常见值相同的整形变量时,是否共享同一地址空间
    结论:共享同一地址空间
    '''
    print('验证结果3:')
    num6=200
    num7=200
    num8=200
    print('地址:' + str(id(num6)) + '值:' + str(num6))
    # 注意:改变num6的之后,地址发生改变
    num6=106
    print('地址:' + str(id(num6)) + '值:' + str(num6))
    print('地址:' + str(id(num7)) + '值:' + str(num7))
    print('地址:' + str(id(num8)) + '值:' + str(num8))

运行结果:

2、test02()函数为float类型的变量的创建,以及创建之后的内存分配使用情况。注释写的很详细就不再赘述。(可与int中的内容对照掌握)

def test02():
    # 数据类型,浮点型的使用
    # 1、创建
    num1 = 100.0  # 直接赋值创建,
    '''
    (1)type()函数返回变量的类型
    '''
    print('验证结果1:')
    print(type(num1))
    print(num1)
    '''
    (2)使用float()函数将其他类型的数据转换成float类型
    '''
    str2 = '100.01'
    num2 = float(str2)
    print(type(num2))
    print(num2)
    '''
    (3)、整型除法运算的得到的结果均为浮点数(包括整除的情况)
    '''
    num3=4/2
    print(type(num3))
    print(num3)

    # 特例1、除法运算想要强制返回一个整型的返回值,使用‘//’运算符代替‘/’运算符
    '''
    id()函数的使用
    作用:返回变量的地址
    使用id()函数验证连续开辟的三个值相同的整型变量共享同一个地址空间,
    '''
    num3 = num4 = num5 = 100.00
    print("验证结果2:")
    print('地址:' + str(id(num3)) + '值:' + str(num3))
    print('地址:' + str(id(num4)) + '值:' + str(num4))
    print('地址:' + str(id(num5)) + '值:' + str(num5))
    # 易错点,print()函数使用➕号连接只能是
    # str类型,不是str类型需要使用str函数转换

    '''
    验证分开常见值相同的浮点变量时,是否共享同一地址空间
    结论:共享同一地址空间
    '''
    print("验证结果3:")
    num6 = 200.0
    num7 = 200.0
    num8 = 200.0
    print('地址:' + str(id(num6)) + '值:' + str(num6))
    print('地址:' + str(id(num7)) + '值:' + str(num7))
    print('地址:' + str(id(num8)) + '值:' + str(num8))

运行结果:

3、test03()函数为bool类型的变量的创建,以及一些bool运算规则。注释写的很详细就不再赘述。(可与int中的内容对照掌握)

相关运算:

  1. 算数运算:将True视为1,False视为0
  2. 逻辑运算:and  or  not。
def test03():
    '''
    bool类型的创建和使用

    '''

    # (1)直接使用True或False关键字赋值创建bool类型变量
    print("1、验证结果:")
    T=True # 注意该关键字区分大小写
    F=False
    print(T,F)

    '''
    注意bool变量参与算数运算时,True的值为1,False的值是0
    '''
    print(T+1,F-1)

    # (2)使用bool函数将其他类型的变量转为bool型,非零的int转化为True,零转化为False
    print("2、验证结果:")
    a=-10
    T1=bool(a)
    F1=bool(0)
    print(T1,F1)

    '''
    (3)bool运算符的使用
    and   or   not  全部小写
    '''
    print("3、验证结果:")
    print(True and False)
    print(True or False)
    print(not True)

    # (4)内存分配情况
    print("验证结果4:")
    # 值为True的变量地址相同
    b1 = True
    b2 = True
    b3 = False
    print(id(b1), id(b2), id(b3))
    # 值为False的变量地址相同
    b2 = False
    print(id(b1), id(b2), id(b3))

运算结果:

 

 4、test04()函数为complex类型的变量的创建。

复数有以下几个注意事项:

  1. 虚数不能单独存在,必须与实数部分一起构成一个复数
  2. 实数与虚数部分都是浮点数
  3. 虚数部分末尾跟一个j
def test04():
    '''
    复数型的创建和使用
    '''
    # 1、直接赋值
    com1=1.0j
    print("1、验证结果:")
    print(type(com1))

    # 2、使用complex()函数创建变量
    # complex函数可以接收0,1,2个参数
    print("2、验证结果:")
    print(complex(2))  # 1个参数,为实部,虚部为0
    print(complex('2+3j'))
    print(complex(2,3))  # 第一个参数为实部,第二个为虚部

4、运行结果:

 

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值