当前位置:   article > 正文

Python学习笔记--理解元组的不可变_元组不可变

元组不可变

以下内容均为本人学习笔记,若有不当,欢迎指出

Python中的元组

上一篇讲了列表的性质 链接 ://TODO
其实列表和元组有很对相似的地方,唯一不同的地方就是元组是只读的

  • 切片访问元组元素
  • 比较操作

  • 由于元组不可变,所以并不支持append, extend,sort 等要修改自身的操作

  • 所有的多个对象,按逗号分隔的,其实都是元组

实现两个数的交换

x = 1                                                                           
y = 2                                                                           
print x, y                                                                      
x, y = y, x                                                                     
print x, y
  • 1
  • 2
  • 3
  • 4
  • 5

执行结果:

1 2
2 1
  • 1
  • 2

其实 y, x 就是一个元组,通过这个 y, x 创建一个新的元组

  • 元组的不可变性
    元组的不可变指定是元组的id不可变,就是指该元组对象的子对象id 不变
    但是如果子对象是可变对象,子对象里面的元素都是可以修改的
a = ([1, 2, 3], (4, 5, 6))                                                      
print a                                                                         
a[0][0] = 99                                                                    
print a 
  • 1
  • 2
  • 3
  • 4

执行结果:

([1, 2, 3], (4, 5, 6))
([99, 2, 3], (4, 5, 6))
  • 1
  • 2

其实元组的应用也很明显,在很多时候,我们将数据作为参数传递,并不希望别的接口修改,就可以传一个元组类型,这样就安全了。

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号