第九章 字典
到现在我们已经学习了python中的很多“数据类型”了,比较简单的像int、float及str,稍微复杂的如list和tuple等,那接下来我们再讲一种我认为是在数据分析中非常有用的数据类型——字典;说到字典,我们小时候肯定用过《新华字典》、《英汉字典》,那python中的这个“数据类型”被称为字典是不是和我们之前天天翻的字典有什么关系呢?的确,“字典”并不是我们凭空翻译过来的,这个类型就是英文中的“dictionary”;接下来我们简单说一下这个数据类型为什么叫字典;首先我们肯定知道在数学中学过的一种关系叫做“映射关系”:
集合A内的小写字母都会一一映射到集合B内的大写字母,而且上图的每个小写字母都只能对应一个大写字母(这是肯定的);再举一个生动些的例子,我们都知道每代iphone手机都会有它的slogan(标语):
我们是可以通过找到iphone的型号,进而检索到它相应的标语,也就好比我们可以通过《英汉词典》中的一个英文单词来检索到它的中文含义;所以这就是为什么这种“数据类型”被称为字典的原因。
另外我们也通常将“字典”称为“键值对”,就好比我们可以把“iPhone5s”称为“键”(key),把它对应的标语“超前 空前”称为“值”(value),并且每一个键和值的组合(key-value)我们都称为“项”,下面我们演示一下字典的用法。
9.1 创建字典的多种方法
首先定义一个空字典
dict1 = {}
print(type(dict1))
结果:
<class 'dict'>
很显然定义字典的方式是使用花括号“{}”,并且输出的数据类型名为“dict”;那接下来我们试一下将历代iphone及其slogan置入字典再进行检索:
dict_iphone = {'iphone 4s':'迄今为止最惊人的iphone','iphone 5':'这一次一切皆有可能'}
print(dict_iphone['iphone 5'])
结果:
这一次一切皆有可能
从上面的演示可以看出,在定义字典时