tuple时Python中的不可变序列类型,它在Python中起到什么作用呢?
- 在函数调用时传递不定长参数
通过使用元组使得Python的参数传递更加灵活。我们可以通过两种方式实现。一种是是在定义函数时,在最后一个形参前加’*’,表示它会将多余的实参同上一个实参合并成元祖传入。比如,
def func(arg1,*arg2):
print arg1,arg2
func('my','name','is','xiaoming') #my ('name', 'is', 'xiaoming')
第二种方法是,在调用函数时,我们将多余的参数打包到一个元组中,传入进去,比如,
def func(arg1,arg2):
print arg1,arg2
func('my',('name','is','xiaoming')) #my ('name', 'is', 'xiaoming')
当然如果你既用了*又在调用时传入了元组参数,则实际上传递进去的是元组内嵌套着元组。
2. 作为返回值
Python中返回值有三种类型。如果return后无任何内容,返回None;有一个元素,返货Object类型,有多个元素就以元组的方式返回了。