可变与不可变类型的图表

8 投票
1 回答
8174 浏览
提问于 2025-04-16 09:53

网上有没有一个表格或者图表,能显示出Python中哪些内置类型是可变的,哪些是不可变的?

1 个回答

12

我不太确定图表的具体样子,但大概是这样的:

可变的:

list(列表)、dictionary(字典)、bytearray(字节数组)
注意:bytearray 其实不是一个序列。

不可变的:

tuple(元组)、str(字符串)

你可以用以下方法来检查一个对象是否可变:

>>> import collections
>>> l = range(10)
>>> s = "Hello World"
>>> isinstance(l, collections.MutableSequence)
True
>>> isinstance(s, collections.MutableSequence)
False

对于字典(映射):

>>> isinstance({}, collections.MutableMapping)
True

撰写回答