本文摘自php中文网,作者anonymity,侵删。
python不可变数据类型有哪些?
在Python中不可变的数据类型有3种,分别是整型、字符串和元组。
整型
1 2 3 4 5 6 | a = 1
print (id(a),type(a))
a = 2
print (id(a),type(a))
1912499232 < class 'int' >
1912499264 < class 'int' >
|
我们可以发现,当数据发生改变后,变量的内存地址发生了改变,那么整型就是不可变数据类型。
字符串
1 2 3 4 5 6 | b = 'djx'
print (id(b),type(b))
b = 'djx1996'
print (id(b),type(b))
535056476344 < class 'str' >
535056476624 < class 'str' >
|
我们可以发现,当数据发生改变后,变量的内存地址发生了改变,那么字符串就是不可变数据类型。
元组
元组被称为只读列表,即数据可以被查询,但不能被修改,但是我们可以在元组的元素中存放一个列表,通过更改列表的值来查看元组是属于可变还是不可变。
1 2 3 4 5 6 7 8 | 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不可变数据类型有哪些的详细内容,更多文章请关注木庄网络博客!!
相关阅读 >>
Python中迭代器和列表解析怎么使用?
pandas妙招之 dataframe基础运算以及空值填充
Python如何合并两个字典?(代码示例)
Python程序怎么变成软件
Python中列表、元组、字典三者有什么区别
Python topn 取最大的n个数或最小的n个数方法
Python如何在 .format 中使用大括号
Python能解微分方程吗
业余学Python有用吗
Python实现按照指定要求逆序输出一个数字
更多相关阅读请进入《Python》频道 >>
人民邮电出版社
python入门书籍,非常畅销,超高好评,python官方公认好书。
转载请注明出处:木庄网络博客 » python不可变数据类型有哪些