元组 Tuple
+元组即不可变(immutable)列表
除了可改变列表内容的方法外,其他方法均适用于元组 因此,索引、切片、len()、print等均可用 但是,appeng、extend、del等不可用+使用,(可以加())创建元组
my_tuple = 1,'a',3.14,True my_tuple = (1,'a',3.14,True)+为什么需要元组?
保证列表内容不被修改元组赋值
交换两个值
temp = aa = bb = temp
或者
a,b = b,a
b赋值给a,a赋值给b,这个过程同时进行
切分一个邮件地址
name,domain = 'car@xx.com'.split('@')
分两部分,@之前的用户名,@之后的域名
函数和元组
+函数只能有一个返回值
但是该值可以是一组值,如返回一个元组+如同时返回列表中的最大和最小值
DSU模式
+Decorate,Sort and Undecorate(DSU)模式
+装饰、排序和反装饰 如根据单词的长度对一个单词列表进行排序words = ['abc','defgh','df','lsefgd']#decoratelst = []for word in words: lst.append((len(word),word))#sort lst.sort(reverse = True)#undecorateres = []for length,word in lst: res.append(word) print res
用匿名函数 lambda
words = ['abc','defgh','df','lsefgd']words.sort(key = lambda lst: len(lst),reverse = True) print words