聊一聊:Python 字典 的用法

恋习Python

共 2519字,需浏览 6分钟

 · 2019-11-30

d2cea3792e1e532f40a6dbcd675f1782.webp

作者:刘帅

博文地址:https://www.cnblogs.com/liu-shuai/


字典是Python语言中唯一的映射类型。字典对象是可变的,它是一个容器类型,支持异构、任意嵌套。


创建字典


  语法:{key1:val1,key2:val2,.....}

  dict1 = {}      #创建空字典

  dict2 = {'n1':'liush','n2':'spirit','n3':'tester'}

  使用函数dict创建字典


>>>D = dict(name='spititman',age=28,gender='M')2 >>>print D3 {'gender': 'M', 'age': 28, 'name': 'spititman'}

使用zip和dict创建字典

zip语法: 2     zip(seq1 [, seq2 [...]]) -> [(seq1[0], seq2[0] ...), (...)] 3 实例展示: 4     >>>L = zip('xyz','123') 5     >>>print L 6     [('x', '1'), ('y', '2'), ('z', '3')] 7  8     >>>L = zip('xyz','123','abc') 9     >>>print L10     [('x', '1', 'a'), ('y', '2', 'b'), ('z', '3', 'c')]11 ################################################################################12 >>>D = dict(zip('xyz','123'))13 >>>print D14 {'y': '2', 'x': '1', 'z': '3'}15 16 >>>D = dict(zip('xyz','123','abc'))17 >>>print D18 ValueError: dictionary update sequence element #0 has length 3; 2 is required


字典常用操作及实例展示


  可以使用dir(dict)查看字典支持的操作方法


clear

  功能:清空字典所有元素

  语法:D.clear() -> None.  Remove all items from D

  实例展示:

>>>D = {'n1':'liush','n2':'spirit','n3':'tester'}2 >>>D.clear()3 >>>print D4 {}

copy

  功能:浅复制字典。

  语法:D.copy() -> a shallow copy of D

  实例展示:

>>>D = {'n1':'liush','n2':'spirit','n3':'tester'}2 >>>id(D)3 1403882119112084 >>>D1 = D.copy()5 >>>print D16 {'n1': 'liush', 'n2': 'spirit', 'n3': 'tester'}7 >>>id(D1)8 140388110074776


fromkeys

  功能:用于创建一个新字典,以序列S中的元素作为字典的键,v为新字典中所有键对应的初始值,默认为none。

  语法:dict.fromkeys(S[,v]) -> New dict with keys from S and values equal to v.v defaults to None

  实例展示:

>>>L = ['spirit','man','liush']2 >>>D_L = dict.fromkeys(L)3 >>>print D_L4 {'liush': None, 'spirit': None, 'man': None}5 ########################################################6 >>>D_L = dict.fromkeys(L,'test')7 >>>print D_L8 {'liush': 'test', 'spirit': 'test', 'man': 'test'}

get

  功能:获取指定键的值

  语法:D.get(k[,d]) -> D[k] if k in D, else d.  d defaults to None

  实例展示:

>>>D = {'n1': 'liushuai', 'n2': 'spirit', 'n3': 'tester'} 2 >>>D1 = D.get('n4') 3 >>>print D1 4 none                    #n4不在字典D中,返回默认值none 5 ########################################################## 6 >>>D2 = D.get('n4','check') 7 >>>print D2 8 check                   #n4不在字典D中,返回指定值check 9 ##########################################################10 >>>D3 = D.get('n2')11 >>>print D312 spirit                  #n2在字典D中,返回n2对应的值13 ##########################################################14 >>>D4 = D.get('n2','check')15 >>>print D416 spirit                  #n2在字典D中,指定值无效,依然返回其对应值


未完,待续!


觉得不错,点个在看呗!

浏览 14
点赞
评论
收藏
分享

手机扫一扫分享

举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

举报