#元组对象
元组与列表类似,是元素的有序序列。元组和列表的主要区别在于元组不可以直接修改。元组中的元素也不可以直接删除或修改。
除此之外,列表中的其他函数和方法对元组同样适用。
t=5,6,7,2
print(t)
print(len(t),max(t),min(t),sum(t))
print(t[0],t[-1],t[:2])
元组中的元素可以直接索引。元组可以切片,连接和重复。
元组的定义可以通过由逗号分隔和括号包围的一个序列来完成。也可以不使用括号来定义。如:
t=('a','b','c')
t='a','b','c'
#嵌套列表
列表和元组中的元素不但可以是数字或者字符串。也可以是列表或者元组。由元组构成的列表在数据分析中扮演着至关重要的角色。例如,如果L是一个由元组构成的列表,那么L[0]是第一个元组,L[0][0]是第一个元组中的第一个元素。L[-1](等同于L[len(L)-1)是最后一个元组,L[-1][-1]是最后一个元组中的最后一个元素。
下面是一个类似的例题:
列表regions包含了四个元组,每个元组给出了美国的一个地域名及其2010年的人口,请计算出美国2010年的总人口。
regions=[("N",55.3),("M",66.9),
("S",114.6),("West",71.9)]
print("The 2010 population of the",regions[1][0],"was",regions[1][1],
"million.")
totalPop=regions[0][1]+regions[1][1]+regions[2][1]+regions[3][1]
print("Total 2010 population of the U.S:{0:.1f} million.".format(totalPop)
#索引,删除和切片越界
Python不允许列表和元组中单个元素的索引越界,但是在切片中可以允许索引越界。
list1=[1,2,3,4,5]
那么print(list1[7]),print(list[-7])和del list1[7]会产生回溯的错误消息。
如果切片的左边索引过小,切片会从列表的第一项开始,如果切片的右边索引过大,切片会一直到列表的最后一项。如:
list1[-10:10]是[1,2,3,4,5]
list1[-10:3]是[1,2,3]
list[3:10]是[4,5]
del list1[3:7]是[1,2,3]