零基础入门学习Python(13):字典

来源:互联网 发布:淘宝网儿童背包 编辑:程序博客网 时间:2024/06/14 21:53

零基础入门学习Python(13):字典

字典是Python中唯一一个映射类型
创建和访问字典:键对应的值

>>> dict1 = {}                           #创建一个空的字典>>> type(dict1)<class 'dict'>>>> dict2 = {1:'one',2:'two',3:'three'}  #使用花括号和键值对创建字典>>> dict2{1: 'one', 2: 'two', 3: 'three'}>>> dict2[1]                             #通过键来访问字典中的值'one'>>> dict3 = {'xiuxiu':'my name','Jessica':'my English name','LittleSeven':'my dog\'s name'}>>> dict3                                #字典中没有顺序{'LittleSeven': "my dog's name", 'Jessica': 'my English name', 'xiuxiu': 'my name'}>>> dict3['xiuxiu']'my name'

除了可以使用花括号{}创建字典,python中还有专门的函数dict()来创建字典对象

>>> dict1 = dict()                       #使用dict()创建一个空字典>>> dict1{}>>> dict2 = dict((('A',65),('B',66),('C',67)))   #通过(键,值)对来创建字典,由于dict()只能有一个参数,所以把(键,值)对打包成元组>>> dict2{'A': 65, 'C': 67, 'B': 66}>>> dict2['A']65>>> dict3 = dict(myName1 = 'xiuxiu',myName2 = 'Jessica',myDogName = 'LittleSeven')  #通过关键字创建字典>>> dict3{'myDogName': 'LittleSeven', 'myName2': 'Jessica', 'myName1': 'xiuxiu'}>>> dict3['myName1']'xiuxiu'>>> dict3['myName1'] = 'Jinxiu'         #如果键存在,则改变键对应的值>>> dict3{'myDogName': 'LittleSeven', 'myName2': 'Jessica', 'myName1': 'Jinxiu'}>>> dict3['everyDay'] = 'happy'         #如果键不存在,则添加一个新的(键->值)对>>> dict3{'myDogName': 'LittleSeven', 'myName2': 'Jessica', 'everyDay': 'happy', 'myName1': 'Jinxiu'}

有关创建和访问字典的几个常用函数

>>> dict1.fromkeys((1,2,3))             #创建字典,有两个参数,第一个参数是键,第二个参数是键对应的值,当第二个参数为空时,每个键对应的值为None{1: None, 2: None, 3: None}>>> dict2.fromkeys((1,2,3),'xiuxiu、Jessica')  #只能给键赋相同的值,即所有键对应的值均相同{1: 'xiuxiu、Jessica', 2: 'xiuxiu、Jessica', 3: 'xiuxiu、Jessica'}>>> dict2 = dict((('A',65),('B',66),('C',67)))>>> dict2.keys()                        #返回一个列表,列表中元素为字典的键dict_keys(['A', 'C', 'B'])>>> dict2.values()                      #返回一个列表,列表中元素为字典中键对应的值dict_values([65, 67, 66])>>> dict2.items()                       #返回一个列表,列表中元素为字典的(键,值)对dict_items([('A', 65), ('C', 67), ('B', 66)])

当使用键查找字典中对应的值时,如果键不存在,会产生KeyError的错误,我们同样可以使用get()函数获取字典中键对应的值,此时如果键不存在,不会出错

>>> dict2.get('D')                      #键不存在时,不产生任何动作>>> dict2.get('D','NoExist')            #get()函数可以有第二个参数,如果键不存在,就会显示第二个参数'NoExist'>>> dict2.get('A','NoExist')            #如果键存在,则返回键对应的值65

下面通过简单的代码演示介绍字典的其他常用的内置函数

>>> dict1 = dict((('A',65),('B',66),('C',67),('D',68)))>>> dict1.pop('B')                      #弹出键对应的值66>>> dict1{'A': 65, 'C': 67, 'D': 68}>>> dict1.popitem()                     #弹出字典中任意一个(键,值)对('A', 65)>>> dict1{'C': 67, 'D': 68}>>> dict1.setdefault('E')               #向字典加入键值对,如果只给出键,则其对应的值为None>>> dict1{'C': 67, 'E': None, 'D': 68}>>> dict1.setdefault('F',70)70>>> dict1{'C': 67, 'E': None, 'D': 68, 'F': 70}>>> dict2 = {'E':69}>>> dict1.update(dict2)                 #用dict2来更新dict1>>> dict1{'C': 67, 'E': 69, 'D': 68, 'F': 70}>>> dict1.clear()                       #清空字典>>> dict1{}

零基础入门学习Python(12):lambda表达式、filter()和map()

2 0
原创粉丝点击