• 技术文章 >后端开发 >Python教程

    python不可变数据类型有哪些

    anonymityanonymity2019-06-14 09:50:48原创9388
    python不可变数据类型有哪些?

    在Python中不可变的数据类型有3种,分别是整型、字符串和元组。

    整型

    a = 1
    print(id(a),type(a))
    a = 2
    print(id(a),type(a))
    1912499232 <class 'int'>
    1912499264 <class 'int'>

    我们可以发现,当数据发生改变后,变量的内存地址发生了改变,那么整型就是不可变数据类型。

    字符串

    b = 'djx'
    print(id(b),type(b))
    b = 'djx1996'
    print(id(b),type(b))
    535056476344 <class 'str'>
    535056476624 <class 'str'>

    我们可以发现,当数据发生改变后,变量的内存地址发生了改变,那么字符串就是不可变数据类型。

    元组

    元组被称为只读列表,即数据可以被查询,但不能被修改,但是我们可以在元组的元素中存放一个列表,通过更改列表的值来查看元组是属于可变还是不可变。

    c1 = ['1','2']
    c = (1,2,c1)
    print(c,id(c),type(c))
    c1[1] = 'djx'
    print(c,id(c),type(c))
    result:
    (1, 2, ['1', '2']) 386030735432 <class 'tuple'>
    (1, 2, ['1', 'djx']) 386030735432 <class 'tuple'>

    我们可以发现,虽然元组数据发生改变,但是内存地址没有发生了改变,但是我们不可以以此来判定元组就是可变数据类型。我们回头仔细想想元组的定义就是不可变的。我们修改了元组中列表的值,但是因为列表是可变数据类型,所以虽然在列表中更改了值,但是列表的地址没有改变,列表在元组中的地址的值没有改变,所以也就意味着元组没有发生变化。我们就可以认为元组是不可变数据类型,因为元组是不可变的。

    以上就是python不可变数据类型有哪些的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:Python
    上一篇:python之父是哪国人 下一篇:python的关键字有哪些
    20期PHP线上班

    相关文章推荐

    • 【活动】充值PHP中文网VIP即送云服务器• 在不同的python版本中,不换行输出有什么变化?• python强大之处在哪里• 哪个不是python合法标识符• python画图软件是哪个
    1/1

    PHP中文网