元组和列表十分类似,只不过元组和字符串一样是 不可变的 即你不能修改元组。元组通过圆括号中用逗号分割的项目定义。元组通常用在使语句或用户定义的函数能够安全地采用一组值的时候,即被使用的元组的值不会改变。



使用元组

#!/usr/bin/python 
# Filename: using_tuple.py  
zoo = ('wolf', 'elephant', 'penguin') 
print 'Number of animals in the zoo is', len(zoo)  
new_zoo = ('monkey', 'dolphin', zoo) 
print 'Number of animals in the new zoo is', len(new_zoo) 
print 'All animals in new zoo are', new_zoo 
print 'Animals brought from old zoo are', new_zoo[2] 
print 'Last animal brought from old zoo is', new_zoo[2][2]

如何工作

变量zoo是一个元组,我们看到len函数可以用来获取元组的长度。这也表明元组也是一个序列。  

由于老动物园关闭了,我们把动物转移到新动物园。因此,new_zoo元组包含了一些已经在那里的动物和从老动物园带过来的动物。回到话题,注意元组之内的元组不会失去它的身份。  

可以通过一对方括号来指明某个项目的位置从而来访问元组中的项目,就像我们对列表的用法一样。这被称作 索引 运算符。我们使用new_zoo[2]来访问new_zoo中的第三个项目。我们使用new_zoo[2][2]来访问new_zoo元组的第三个项目的第三个项目。  含有0个或1个项目的元组。一个空的元组由一对空的圆括号组成,如myempty = ()。然而,含有单个元素的元组就不那么简单了。必须在第一个(唯一一个)项目后跟一个逗号,这样Python才能区分元组和表达式中一个带圆括号的对象。即如果你想要的是一个包含项目2的元组的时候,你应该指明singleton = (2 , )。


元组的打印

元组最通常的用法是用在打印语句中

#!/usr/bin/python 
# Filename: print_tuple.py  
age = 22 
name = 'Swaroop'  
print '%s is %d years old' % (name, age) 
print 'Why is %s playing with that python?' % name