Python字典

fromkeys(S, v=None)

d = dict.fromkeys('abc', 666)
print(d)

{‘a’: 666, ‘b’: 666, ‘c’: 666}

key 不能重复,必须为不可变类型。

dic[key] = value

del

del dic[key]
key 必须存在。

pop

删除指定键值对,返回对应的值
dic.pop(key[, default])
如果key不存在,返回给定的default值

d = {'name': 'sz', 'age': 18}
v = d.pop('age')
print(v, d)

18 {‘name’: ‘sz’}

popitem

删除按升序排序后的第一个键值对,并以元组的形式返回该键值对,如果字典为空则直接报错

d = {'name': 'sz', 'age': 18}
result = d.popitem()
print(result, d)

(‘age’, 18) {‘name’: ‘sz’}

dic.clear()

删除字典内所有键值对

d = {'name': 'sz', 'age': 18}
d.clear()
print(d)

{}

dic[key] = value

批量修改键值对

oldDic.update(newDic)
根据新的字典,批量修改旧字典中的键值对,没有则新增

d = {'name': 'sz', 'age': 18}
d.update({'age':666, 'address':'shanghai'})
print(d)

{‘name’: ‘sz’, ‘age’: 666, ‘address’: ‘shanghai’}

dic[key]

get

dic.get(key[, default])
如果不存在对应的key,则取给定的默认值default,如果没有默认值,则为None

setdefault

dic.setdefault(key[,default])
获取指定key对应的值,如果key不存在,则设置给定的默认值,并返回该值,如果默认值没有给定则使用None代替

d = {'name': 'sz', 'age': 18}
v = d.setdefault('age1')
print(v, d)

获取所有的值

dic.values()

d = {'name': 'sz', 'age': 18}
print(d.values())

dict_values([‘sz’, 18])

获取所有的键

dic.keys()

获取键值对

dic.items()

d = {'name': 'sz', 'age': 18}

vs = d.values()
ks = d.keys()
its = d.items()

print(vs, ks, its)
d['address'] = 999
print(vs, ks, its)

dict_values([‘sz’, 18]) dict_keys([‘name’, ‘age’]) dict_items([(‘name’, ‘sz’), (‘age’, 18)])
dict_values([‘sz’, 18, 999]) dict_keys([‘name’, ‘age’, ‘address’]) dict_items([(‘name’, ‘sz’), (‘age’, 18), (‘address’, 999)])

Pyhton3.x中获得的为Dictionary view objects

d = {'name': 'sz', 'age': 18}

vs = d.values()
ks = d.keys()
its = d.items()

print(list(vs))

[‘sz’, 18, 999]

遍历

先遍历所有的key 然后根据key获取值。

d = {'name': 'sz', 'age': 18, 'address': 'shanghai'}

ks = d.keys()

for key in ks:
    print(key)
    print(d[key])

name
sz
age
18
address
shanghai

直接遍历所有键值对:

d = {'name': 'sz', 'age': 18, 'address': 'shanghai'}

kvs = d.items()

d['xxx'] = 'ooo'

for k, v in kvs:
    print(k, v)

name sz
age 18
address shanghai
xxx ooo

计算

len(info)

键值对个数

判定

x in dic
判定dic中的key,是否存在x

x not in dic
判定dic中的key,是否不存在x

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值