资讯专栏INFORMATION COLUMN

Python复习笔记——tuple

pepperwang / 1294人阅读

摘要:可以用作的,因为它是不可变的。但是作为的时有个限制的元素是可以哈希的。一般是这样用的但是你不能这样用

最近把python的基础语法复习一下,发现tuple这个比较特殊,有几点需要注意下

1.tuple的每个元素值不能改变,如:

</>复制代码

  1. >>> a=(1,2)
  2. >>> a[0]=3;
  3. Traceback (most recent call last):
  4. File "", line 1, in
  5. TypeError: "tuple" object does not support item assignment
  6. >>>

2.tuple的元素是list的时候,tuple是管不着list的,tuple只管每个元素的值不改变

</>复制代码

  1. >>> b=[1,2]
  2. >>> a=(b,3)
  3. >>> id(b)
  4. 4454662368
  5. >>> id(a)
  6. 4454507512
  7. >>> id(a[0])
  8. 4454662368

如上,当我再修改b的时候,a里面看到的是修改后的值

</>复制代码

  1. >>> b[0]=8
  2. >>> a
  3. ([8, 2], 3)

但是我给b重新复制的话,b已经是指向了新的地址

</>复制代码

  1. >>> b=[4,5]
  2. >>> id(b)
  3. 4454500256
  4. >>> id(a[0])
  5. 4454662368
  6. >>> a
  7. ([8, 2], 3)

对b的修改当然不会影响到a。

3.tuple可以用作dict的key,因为它是不可变的。但是tuple作为dict的key时有个限制——tuple的元素是可以哈希的。
一般是这样用的:

</>复制代码

  1. >>> c=(4,6)
  2. >>> d={c:"adf"}

但是你不能这样用:

</>复制代码

  1. >>> l=[5,4]
  2. >>> c=("dfdf",l)
  3. >>> d={c:"adf"}
  4. Traceback (most recent call last):
  5. File "", line 1, in
  6. TypeError: unhashable type: "list"

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/38545.html

相关文章

  • [零基础学python]难以想象的for

    摘要:看这个标题,有点匪夷所思吗为什么是难以想象的呢因为在中,它的确是很常用而且很强悍,强悍到以至于另外一个被称之为迭代的东西,在中就有点相形见绌了。然后将序列对应的元素依次组成元组,做为一个的元素。 看这个标题,有点匪夷所思吗?为什么for是难以想象的呢?因为在python中,它的确是很常用而且很强悍,强悍到以至于另外一个被称之为迭代的东西,在python中就有点相形见绌了。在别的语言中,...

    lwx12525 评论0 收藏0
  • [零基础学Python]有点简约的元组

    摘要:关于元组,上一讲中涉及到了这个名词。元组是用圆括号括起来的,其中的元素之间用逗号隔开。使用而不是如同拥有一个隐含的语句,说明这一数据是常量。必须是不可变的。只有字符串整数或其它对安全的才可以用作。 关于元组,上一讲中涉及到了这个名词。本讲完整地讲述它。 先看一个例子: >>>#变量引用str >>> s = abc >>> s abc >>>#如果这样写,就会是... >>> t...

    leap_frog 评论0 收藏0
  • 记录我的Python学习笔记

    摘要:本文是通过廖雪峰的网站学习而整理的真的是很好的教程,省得我花钱买书了,然后我没有去再整理总结语法,而是直接通过写出代码段来体现自己的学习,也方便以后的快速复习回顾。 不想再像以前那样,什么都从头开始学习语法、总结语法,这样反而会过分纠结于语法,耽误了开发,毕竟语言的主要属性是工具,次要的属性是语言本身。 所以还是先熟练使用语言去进行开发,等足够熟悉了,再去研究语言本身(编译原理……)。...

    lijy91 评论0 收藏0
  • python学习笔记-数据集合: list,tuple,dict,set

    摘要:元素的获取与一致,即即可。中的是唯一的不可变对象。若不存在该则返回。是一个有序且不重复的数据集合。创建创建时重复的元素将被自动删除。添加元素删除元素若元素不存在,则会报错误。 Python的数据集合有四种,即list,tuple,dict,set 列表,List List是Python中一种有序的可变的数据集合。它的元素可以被添加或则删除。List的表示方法是用一个[]将元素包含起来,...

    qylost 评论0 收藏0
  • [学习笔记]Python基本语法之dict,set

    摘要:如果一个对象定义了和两个方法,它就是一个迭代器,对于迭代器来说,返回的是它自身,则是返回迭代器中的下一个值。 复习索引: 1. dict与list的区别是什么?查找方面 2. dict如何进行数据的存、取、判断是否存在、返回位置、删除等操作? 3. 什么是不可变对象?在dict和set中如何应用? 4. dict和set有什么异同? 5. range(),abx()函数如何使用?参数是...

    AZmake 评论0 收藏0

发表评论

0条评论

pepperwang

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<