一、字典(dictionary)

python内置的字典数据类型提供了关联数组的功能,实现机制是利用了散列表。内置 的len函数将返回字典中键值对的数量。del语句可以用来删除键值对,像列表类型一样,字典类型也提供了一些可以的方法(clear、copy、get、items、keys、update和values)。

>>> x = {1: "one", 2: "two"}

>>> x["first"] = "one"

>>> x[("Delorme", "Hahashen", 2000)] = (1, 2, 3)

>>> list(x.keys())

[1, 2, 'first', ('Delorme', 'Hahashen', 2000)]

>>> x[1]

'one'

>>> x[2]

'two'

>>> x.get(1,"not available")

'one'

>>> x.get(2,"not available")

'two'

>>> x.get(3,"not available")

'not available'

Python数据类型-dictionary&set_java

如上图:字典必须是不可变类型,如数值、字符串、元组。字典值可以是任何对象,包括列表和字典这种可变类型。当要访问的键的值在字典中不存在时,将会引发keyError。如果想要避免这种异常,字典方法选择可以当键在字典中不存在时返回自定义值。


一、集合(set)

集合的定义:由不同元素组成的集合,集合是一组无序排列 可hash值,可作为字典的key。特性:集合的目的是将不同的值存放在一起,不同的集合间用来做关系运算,无须纠结于集合中的单个值。

(1、不同元素组成 2、无序 3、集合中的元素必须是不可变类型)

python中的集合类型是由对象组成 的无序集。如果主要关心的是对象在集合中的存在性和唯一性,可以考虑使用集合类型。集合的行为,就像是没有关联值的字典键集。

>>> x = set([1,2,3,1,3,5])

>>> x

{1, 2, 3, 5}

>>> 1 in x

True

>>> 4 in x

False

Python数据类型-dictionary&set_java_02

对序列型对象调用set函数,可以创建一个集合,在创建时,重复的序列成员将会被移除。关键字in可用于检查对象是否为集合的成员。

----------------------end---------------------

推荐阅读: