时间:2021-05-22
定义一个字典
>>> d = {"server":"mpilgrim", "database":"master"} 1>>> d{'server': 'mpilgrim', 'database': 'master'}>>> d["server"] 2'mpilgrim'>>> d["database"] 3'master'>>> d["mpilgrim"] 4Traceback (innermost last):
File "<interactive input>", line 1, in ?
KeyError: mpilgrim
首先,我们创建了一个拥有两个元素的新字典,并将其赋值给变量 d。每一个元素都是一个键-值对,整个元素集合用大括号括起来。
server 是一个键字,它所关联的值为 mpilgrim,用 d["server"] 来引用。
database 是一个键字,它所关联的值为 master,用 d["database"] 来引用。
你可以通过键字来得到值,但是不能通过值得到键字。所以 d["server"] 为 mpilgrim,但是使用 d["mpilgrim"] 会引发一个异常,因为 mpilgrim 不是一个键字。
修改一个字典
>>> d{'server': 'mpilgrim', 'database': 'master'}>>> d["database"] = "pubs" 1>>> d{'server': 'mpilgrim', 'database': 'pubs'}>>> d["uid"] = "sa" 2>>> d{'server': 'mpilgrim', 'uid': 'sa', 'database': 'pubs'}不能在一个字典中有重复的键字。给一个存在的键字赋值会抹掉原来的值。
可以在任何时候加入新的键-值对。这种语法同修改存在的值一样。(是的,它可能某天会给你带来麻烦,你可能认为增加了新值,但实际上只是反复地修改了同样的值,因为你的键字没有按照你的想象改变。)
注意新的元素(键字为 uid,值为 sa)出现在字典中间。实际上,它只不过是一种巧合,在第一个例子中的元素看上去是有序的。现在它们看上去无序了则更是一种巧合。
Note
字典没有元素顺序的概念。说元素顺序乱了是不正确的,它们只是简单的无序。这是一个重要的特性,它会在你想要以一种特定的,可重复的顺序(象以键字的字母表顺序)存取字典元素的时候骚扰你。有一些实现的方法,它们只是没有加到字典中去。
在字典中混用数据类型
>>> d{'server': 'mpilgrim', 'uid': 'sa', 'database': 'pubs'}>>> d["retrycount"] = 3 1>>> d{'server': 'mpilgrim', 'uid': 'sa', 'database': 'master', 'retrycount': 3}>>> d[42] = "douglas" 2>>> d{'server': 'mpilgrim', 'uid': 'sa', 'database': 'master', 42: 'douglas', 'retrycount': 3}字典不是只用于字符串。字典的值可以是任意数据类型,包括字符串,整数,对象,或者甚至其它的字典。在一个单个字典里,字典的值并不需要全都是同一数据类型,可以根据需要混用和配匹。
字典的关键字要严格一些,但是它们可以是字符串,整数和几种其它的类型(后面还会谈到这一点)。也可以在一个字典中混用和配匹关键字。
从字典中删除元素
>>> d{'server': 'mpilgrim', 'uid': 'sa', 'database': 'master', 42: 'douglas', 'retrycount': 3}>>> del d[42] 1>>> d{'server': 'mpilgrim', 'uid': 'sa', 'database': 'master', 'retrycount': 3}>>> d.clear() 2>>> d{}del 允许你根据键字将单个元素从字典中删除。
clear 会删除一个字典中所有元素。注意空的大括号所表示的集合说明一个字典没有元素。
字符串是大小写敏感
>>> d = {}>>> d["key"] = "value">>> d["key"] = "other value" 1>>> d{'key': 'other value'}>>> d["Key"] = "third value" 2>>> d{'Key': 'third value', 'key': 'other value'}将一个值赋给一个存在的字典关键字只是简单的用新值替换旧值。
这样做不会将一个值赋给一个存在的字典关键字,因为在Python中字符串是大小写敏感的,所以 'key' 与 'Key' 是不同的。这样就在字典中生成了一个新的键/值对。对你来说可能差不多,但对于Python来说,完全是不同的。
如何访问字典中的值:
>>> dict2 = {'name':'earth','port':80} >>> for key in dict2.keys(): ... print 'key=%s,value=%s' %(key,dict2[key])...key=name,value=earthkey=port,value=80>>> for key in dict2: ... print 'key=%s,value=%s' %(key,dict2[key])...key=name,value=earthkey=port,value=80
获取字典某个元素值:
检查字典中是否有某个键的方法 has_key()或in,not in
一个字典中混用数字和字符串的例子:
整体赋值:
更新字典:
删除字典元素和字典
注:避免使用内建对象名字作为变量的标识符
类似: dict,list,file,bool,str,input,len
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
概述从前面的对Python基础知识方法介绍中,我们几乎是围绕Python内置方法进行探索实践,比如字符串、列表、字典等数据结构的内置方法,和大量内置的标准库,诸
在Python中最重要的数据类型包括字符串、列表、元组和字典等.该篇主要讲述Python的字符串基础知识.一.字符串基础字符串指一有序的字符序列集合,用单引号、
已经给大家介绍过range和xrange的区别的基础知识,有兴趣的朋友可以参阅:python中xrange和range的区别python中range()与xra
最近在写一些关于java基础的文章,但是我又不想按照教科书的方式去写知识点的文章,因为意义不大。基础知识太多了,如何将这些知识归纳总结,总结出优缺点或者是使用场
前言最近重新再看python的基础知识,感觉自己还是对于这些知识很陌生,需要用的时候还是需要翻书查阅,还是先注重基础吧——我要重新把python的教程阅读一遍,