#创作者招募令#
字典第六十一节:Python序列中的“字典”
今天开始学习Python中的另一种可变序列—“字典”(dictionary)。
“字典”不但是可变序列,而且还是无序的可变序列,它当中的元素是以“
‘健-值’对”的形式保存的。
想当年我们小时候人人必备一本新华字典,通过拼音或者笔画,就可以直接用字典查到对应的汉字在那一页,然后在相应的页数上可以查到汉字的详细注释。
拿新华字典中的《汉语拼音音节索引》表来举例:其中的音节相当于是字典中的“健”(key),其对应的汉字,就可以看作是字典中的“值”(value),将它俩组合在一起,就是一个“‘健-值’对”。
“字典”中的“健”是唯一的,其对应的“值”则允许有多个。这一点在“字典”定义一个包含多个命名字段对象的时候,有很大用途。
Python代码图今天先来了解一下“字典”有哪些特征:
1、字典通过“健”来读取
Python的字典是通过“健”将一系列的值联系起来,因此也就能通过“健”来查询字典中指定的值,但是却不能和列表一样使用索引来获得指定的值。前面学习序列的第一课“索引”的时候,就学过“字典不支持索引、切片、相加和相乘操作。”(详见42节内容。)
2、字典是任意元素的无序集合
字典是无序的,其中的各项(“‘健-值’对”)是从左到右随机排序的,就是说保存在字典中的各项没有特定的顺序。据说这样的好处是便于查找,容我慢慢学来。
3、字典是可变序列
所谓可变序列,就是说字典像列表一样,可以任意的添加、减少、修改和删除元素,并且就在原字典内进行这些操作来改变“值”,不用刻意产生新的字典。
4、字典可以任意嵌套
这个就厉害了。前面已经学过选择语句的嵌套和循环语句的嵌套(详见34、37节内容),可是字典的嵌套深度是没有限制的,只要代码不出错,就算是它的值是列表甚至是其他的字典,也可以一直嵌套下去,回忆起学过的那两个语句的简单嵌套,那画面想想都眼睛发酸,估计套的层数多了哪哪儿都看不清,眼涩发酸只想哗哗流大泪……
5、字典中的“健”必须唯一
字典中的“健”具有唯一性,只能在一个字典中出现一次,如果有犟驴非要在字典中将一个“健”输入两次,那么这个“健”只对应后一个“值”,前一个值就被白瞎了。
6、字典中的“健”必须不可变
字典虽然是可变序列,但是可变的只有“健”对应的“值”,“健”则是不可变的。所以“健”可以是数字、字符串和元组,但不能是列表(因为列表本身就是可变序列)。
以上就是“字典”的主要几个特征,接下来就将这几个特征一一验证学习,明天先学“字典的创建和删除”,请拭目以待。
为自己加油,我是“学海无涯,自学不息!”
零基础学Python从入门到精通python编程自学Python基础入门项目实践赠视频课程R京东好评率97%无理由退换¥36.8购买