字典

字典常用方法

  • clear方法清除字典中所有的项,这是一个原地操作,所以无返回值(或则说返回None)
d = {}
d['Tom']=8777             # 在字典中添加数据           
d['Jack']=9999    
print(d)                 #the result : {'Jack': 9999, 'Tom': 8777}
d.clear()
print(d)                #the result : {}

  • copy方法返回一个具有相同 ”键-值” 对的新字典,而不是副本
d = {'Tom':8777,'Fly':6666}
a = d.copy()
a['Tom'] = '改变后的值'
print(d)                        #{'Fly': 6666, 'Tom': 8777}
print(a)                        #{'Fly': 6666, 'Tom': '改变后的值'}

  • fromkeys方法使用给定的键建立新的字典,每个键都对应一个默认的值None。
#首先建造一个空字典,然后调用它的fromkeys方法,建立另一个字典
print({}.fromkeys(['name','age']))         #the result : {'age': None, 'name': None}

  • get方法是个更宽松的访问字典项的方法,如果试图访问字典中不存在的项时不会报错仅会 返回:None
d = {'Tom':8777,'Jack':8888,'Fly':6666}
print(d.get('Tom'))                              #the result :     8777
print(d.get('not_exist'))                          #the result :     None

  • 循环字典
d = {'Tom':8777,'Jack':8888,'Fly':6666}
# 方法1:
for k,v in d.items():
    print(k,v)
# 方法2
for k in d.values():
    print(k)
# 方法:3
for k in d.keys():
    print(k)

  • pop方法用于获得对应与给定键的值,然后将这个”键-值”对从字典中移除
d = {'Tom':8777,'Jack':8888,'Fly':6666}
v = d.pop('Tom')
print(v)                    #{'Jack': 8888, 'Fly': 6666}

  • setdefault

作用:setdefault方法在某种程度上类似于get方法,能够获得与给定键相关联的值
除此之外,setdefault还能在字典中不含有给定键的情况下设定相应的键值

d = {'Tom':8777,'Jack':8888,'Fly':6666}
d.setdefault('Tom')                          #the result : 8777
print(d.setdefault('Test'))                     #the result : None
print(d)                                  #{'Fly': 6666, 'Jack': 8888, 'Tom': 8777, 'Test': None}

  • update方法可以利用一个字典项更新另一个字典,提供的字典中的项会被添加到旧的字典中,如有相同的键则会被覆盖
d = {'Tom':8777,'Jack':8888,'Fly':6666}
a = {'Tom':110,'Test':119}
d.update(a)
print(d)                        #the result :{'Fly': 6666, 'Test': 119, 'Jack': 8888, 'Tom': 110}

  • 将两个列表组合成字典
keys = ['a', 'b']
values = [1, 2]
#1、zip生成字典
print(dict(zip(keys,values)))                              # {'a': 1, 'b': 2}
#2、for循环推倒字典
print({keys[i]: values[i] for i in range(len(keys))})              # {'a': 1, 'b': 2}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值