第5章 探究内置集合类型
我们已经遇到了一些内置的集合(collection):
str
——不可变的Unicode码位字符串序列;list
——可变的对象序列;dict
——可变的字典,它将不可变的键映射到可变的对象。
我们只是对这些集合类型的用法浅尝辄止,所以,在本章中,我们将深入探讨它们的功能。同时,本章还将介绍3种新的内置集合类型:
tuple
——不可变的对象序列;range
——对于整数的等差序列;set
——包含唯一、可变对象的可变集。
本章不会再进一步讲解bytes
类型。我们已经讨论了它与str
的本质区别,学过的大多数关于str
的知识也适用于字节。
这里不会详尽地列出所有的Python集合类型,但是对于绝大多数你将在外面遇到的或者可能自己编写的Python 3程序来说,这几个集合类型是完全够用的。
在本章中,我们将按照上面提到的顺序来介绍这些集合类型,最后将介绍协议(protocol),是协议将集合统一到一起,从而我们能够以一致和可预测的方式使用它们。
5.1 tuple——不可变的对象序列
在Python中,元组(tuple
)是可以包含任意对象的不可变序列。一旦创建了元组,就不能替换或删除其中的对象,并且不能向它添加新的元素。
5.1.1 元组字面量
元组与列表具有相似的字面量语法,只是元组是由圆括号包裹而不是方括号。以下是一个包含字符串、浮点数和整数的元组字面量:
>>> t = ("Norway", 4.953, 3)
>>> t
('Norway', 4.953, 3)
5.1.2 访问元组中的元素
可以在方括号里使用从0开始的索引来访问元组中的元素:
>>> t[0]
'Norway'
>>> t[2]
3
5.1.3 元组的长度
可以使用内置的
Get Python实用技能学习指南 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.