美文网首页
python 元组与列表的区别

python 元组与列表的区别

作者: alue | 来源:发表于2022-10-12 22:12 被阅读0次

先看下面两种截然不同的行为

t1 = (1,2,3)
t2 = tuple(t1) 
# 或者 t2 = t1[:]

l1=[1,2,3]
l2 = list(l1) 
# 或者 l2 = l1[:]

print(t1 is t2) # True
print(l1 is l2) # False

原因是,在python中,元组tuple是不可变类型. 所以为了节省资源,这种构造器会返回同一个对象的引用。而列表是可变对象,会新建一个副本。
类似的,容易迷惑的行为是

t1 = (1,2,3)
t2 = t1
t1 += (4,5)
 
l1=[1,2,3]
l2 = l1
l1 += [4,5]

print(t1 is t2) # False
print(l1 is l2) # True

不可变类型tuple在做运算后,会新建一个元组,重新绑定给t1。
而可变类型list在运算后,会原地修改原始值。

相关文章

  • Python TUPLE - 打包,解包,比较,切片,删除,键

    什么是Python的中的元组? 元组就像一系列不可变Python对象的列表。列表和元组之间的区别在于列表在方括号中...

  • Python基础(10) - 列表与元组的区别

    列表与元组的主要区别 描述列表,元组的区别 语法的差异 元组是只读,列表是可读 复制的话,元组复制后还是自身,列表...

  • 2018-01-13 python学习第一天

    第二章 列表和元组 列表和元组区别:列表可以修改,二元组则不能 python的6种內建的序列: 列表和元组,字符串...

  • python学习——元组

    Python —— 元组 元组与列表极为相似,列表以【】表示,元组以()表示。 列表可以修改其中的元素,元组不可修...

  • python 基础 - 元组

    Python 元组 Python 的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号...

  • 元祖

    Python 元组 Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。...

  • Python基础之元组、字典,集合详解

    之前总结了Python列表,这篇总结Python的元组,字典和集合。 一 元组 tuple Python 的元组与...

  • Python元组

    python元组元组和列表的区别在于元组中的元素不能修改 创建元组创建元组用() tuple = ()当元组里只包...

  • python 元组与列表的区别

    先看下面两种截然不同的行为 原因是,在python中,元组tuple是不可变类型. 所以为了节省资源,这种构造器会...

  • 元组tuple

    不同的列表---元组tuple 元组与列表最大的区别,元组的内容是无法改变 创建元组方法 >>> a = (1,2...

网友评论

      本文标题:python 元组与列表的区别

      本文链接:https://www.haomeiwen.com/subject/gwizartx.html