python的tuple

tuple能做什么:

tuple和list一样定义,list用[],tuple用()
tuple和list一样,可以用index索引元素,从0开始
tuple和list一样,负数索引从尾部开始计数
tuple和list一样,可以切片,list切片获得一个list,tuple切片获得一个tuple

tuple不能做什么:

tuple不可变,你不能添加元素、删除元素
tuple不可以查找
然而,你可以用in方法判断一个元素是否在tuple中

tuple怎么用:

tuple比list快,当你希望定义一个不变的集合,并且以后要做的就是不断的遍历他,请用tuple
如果想对一些不需要修改的数据写保护,可以考虑tuple,tuple如同拥有一个隐含的assert函数,说明这一数据是常量
Tuples 可以在 dictionary 中被用做 key,list 不行,Dictionary key 必须是不可变的
Tuples 可以用在字符串格式化中

tutle和好基友list

Tuple 可以转换成 list,反之亦然。内置的 tuple 函数接收一个 list,并返回一个有着相同元素的 tuple。而 list 函数接收一个 tuple 返回一个 list。从效果上看,tuple 冻结一个 list,而 list 解冻一个 tuple

参考

How to Think Like a Computer Scientist
Python Knowledge Base
Python Tutorial
Dive Into python