python tuple,有人可以解释这种行为吗?

laike9m

我发现了一些TypeError: 'tuple' object does not support item assignment关于SO的问题,但我对此仍然感到困惑:

考虑一下代码片段:

>>> a = ([],[])
>>> a[0].append(1)       # 1
>>> a
([1], [])
>>> a[0] += [2]

Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
    a[0] += [2]
TypeError: 'tuple' object does not support item assignment   # 2
>>> a
([1, 2], [])   # 3
>>> 

我的问题是:

  1. 元组是不可变的,但是1成功更改了它的值。为什么?(我知道我并不真正了解python的不可变性。)
  2. 如果1被接受,2加薪的原因是TypeError什么?
  3. 在中3a被修改,那么提高a有TypeError什么意义呢?

谢谢

普拉文

这是因为元组是不可变的,但它可以包含可变数据类型(在您的情况下为列表)作为元素。

您的元组a = ([], [])是列表的元组。这就是为什么您能够将数据附加到列表a [0]的原因。

在此:

a[0] += 2 

您试图更改引发异常TypeError的元组的值(由于使用了'='赋值运算符)

在三个列表中,由于使用了“ +”运算符,因此将其连接起来。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

有人可以向我解释这种python行为吗?

来自分类Dev

有人可以解释python生成器表达式中空dict的行为吗?

来自分类Dev

有人可以解释python中全局变量的以下行为吗?

来自分类Dev

有人可以解释双递归python吗?

来自分类Dev

有人可以解释这个python代码的作用吗?

来自分类Dev

有人可以解释这种查找方法的行为吗?

来自分类Dev

有人可以向我解释这种行为吗?

来自分类Dev

有人可以解释如何大写Python列表中的所有元素吗?

来自分类Dev

有人可以解释所有代码的含义吗?PYTHON

来自分类Dev

有人可以解释一下这个简单的python代码吗?

来自分类Dev

有人可以解释Python结构解压缩吗?

来自分类Dev

空格上的python split()问题,有人可以解释吗?

来自分类Dev

有人可以解释在此Python程序中*的用法吗?

来自分类Dev

有人可以解释一下用Python编写的此语句的含义吗?

来自分类Dev

空格上的python split()问题,有人可以解释吗?

来自分类Dev

有人可以解释为什么我的Python图无法显示任何内容吗?

来自分类Dev

Python。有人可以向我解释以下输出吗?

来自分类Dev

在 Python 中登录。有人可以解释一下吗?

来自分类Dev

有人可以在python中解释这个递归函数的输出吗?

来自分类Dev

有人可以向我解释 Python 中星号的用途吗?

来自分类Dev

有人可以解释为什么我在 Python 中得到这个输出吗?

来自分类Dev

Python(GTK):有人可以解释TreeStore,Listmodel和其他所有代码之间的区别吗?

来自分类Dev

有人可以解释这种奇怪的行为(nodejs +猫鼬)吗?

来自分类Dev

有人可以帮我解决为什么会发生这种情况吗?Python无效语法错误

来自分类Dev

有人可以解释Python的子流程模块如何与命令提示符通信吗?

来自分类Dev

有人可以在python(scipy.io)中解释mdict,例如在scipy.io.savemat()中吗?

来自分类Dev

有人可以解释在Python中将此数据帧转换为字典时我在做什么吗

来自分类Dev

有人可以解释这本词典的行为吗?

来自分类Dev

奇怪的红宝石行为。有人可以解释吗?

Related 相关文章

  1. 1

    有人可以向我解释这种python行为吗?

  2. 2

    有人可以解释python生成器表达式中空dict的行为吗?

  3. 3

    有人可以解释python中全局变量的以下行为吗?

  4. 4

    有人可以解释双递归python吗?

  5. 5

    有人可以解释这个python代码的作用吗?

  6. 6

    有人可以解释这种查找方法的行为吗?

  7. 7

    有人可以向我解释这种行为吗?

  8. 8

    有人可以解释如何大写Python列表中的所有元素吗?

  9. 9

    有人可以解释所有代码的含义吗?PYTHON

  10. 10

    有人可以解释一下这个简单的python代码吗?

  11. 11

    有人可以解释Python结构解压缩吗?

  12. 12

    空格上的python split()问题,有人可以解释吗?

  13. 13

    有人可以解释在此Python程序中*的用法吗?

  14. 14

    有人可以解释一下用Python编写的此语句的含义吗?

  15. 15

    空格上的python split()问题,有人可以解释吗?

  16. 16

    有人可以解释为什么我的Python图无法显示任何内容吗?

  17. 17

    Python。有人可以向我解释以下输出吗?

  18. 18

    在 Python 中登录。有人可以解释一下吗?

  19. 19

    有人可以在python中解释这个递归函数的输出吗?

  20. 20

    有人可以向我解释 Python 中星号的用途吗?

  21. 21

    有人可以解释为什么我在 Python 中得到这个输出吗?

  22. 22

    Python(GTK):有人可以解释TreeStore,Listmodel和其他所有代码之间的区别吗?

  23. 23

    有人可以解释这种奇怪的行为(nodejs +猫鼬)吗?

  24. 24

    有人可以帮我解决为什么会发生这种情况吗?Python无效语法错误

  25. 25

    有人可以解释Python的子流程模块如何与命令提示符通信吗?

  26. 26

    有人可以在python(scipy.io)中解释mdict,例如在scipy.io.savemat()中吗?

  27. 27

    有人可以解释在Python中将此数据帧转换为字典时我在做什么吗

  28. 28

    有人可以解释这本词典的行为吗?

  29. 29

    奇怪的红宝石行为。有人可以解释吗?

热门标签

归档