欢迎访问郭晓龙个人博客
你的位置:首页  > Python  > python 的 tuple 是不是冗余设计?

python 的 tuple 是不是冗余设计?

一般来说,tuple 是不可变的(immutable)可以包含多种类型成员的数据结构,list 是可变的包含同类型成员的数据结构。 但是 python 的 list 实际上是可以包含不同类型成员的,而 tuple 也支持顺序遍历,也就是说 list 的功能比 tuple 只多不少,或者说 tuple 只是个被解释器限制为 immutable 的 list,这么看来似乎没必要引入 tuple 这个数据结构。 而且 tuple 并没有相比 list 让代码更简单,所以也不同于 STL 里让编程变得更方便的容器适配器(比如用 stack 适配 deque),在实践中经常会看到各种 tuple 和 list 互相转的情况,反而让代码变得更难看,是不是不符合 "simple is better than complex" 的思想?

详情:https://www.zhihu.com/question/60574107

文章标题: python 的 tuple 是不是冗余设计?
文章地址: http://www.guoxiaolong.cn/article-2-35
文章标签: python
Top