Python 有一个不可变的列表吗?
问题描述
python 有不可变的列表吗?
Does python have immutable lists?
假设我希望有一个有序的元素集合的功能,但我想保证不会改变,如何实现?列表是有序的,但它们可以改变.
Suppose I wish to have the functionality of an ordered collection of elements, but which I want to guarantee will not change, how can this be implemented? Lists are ordered but they can be mutated.
解决方案
是的.它被称为 tuple.
所以,[1,2] 是一个 list 并且可以被变异,而不是 (1,2) 是一个tuple 不能.
So, instead of [1,2] which is a list and which can be mutated, (1,2) is a tuple and cannot.
更多信息:
单元素的tuple不能通过写(1)来实例化,而是需要写(1,).这是因为解释器对括号还有各种其他用途.
A one-element tuple cannot be instantiated by writing (1), instead, you need to write (1,). This is because the interpreter has various other uses for parentheses.
您也可以完全取消括号:1,2 与 (1,2)
You can also do away with parentheses altogether: 1,2 is the same as (1,2)
请注意,元组完全不是不可变列表.点击这里阅读更多关于列表和元组的区别一个>
Note that a tuple is not exactly an immutable list. Click here to read more about the differences between lists and tuples
相关文章