Python:映射 dict字典表

特性:

1.通过键(key),而非位置偏移(下标索引)访问数据

2.包括任意对象的无序集合

3.可变长度,异质,可任意嵌套

4.属  可变映射 分类

5.对象引用表(hash table)


>>> d = {'name':'yang', 'h':12}
>>> d
{'name': 'yang', 'h': 12}
>>> doc = dict(title='li', aget = 100)
>>> doc
{'title': 'li', 'aget': 100}
list转换dict

>>> lst = [('name', 'jack'), ('agee', 20)]
>>> lst
[('name', 'jack'), ('agee', 20)]
>>> doc2 = dict(lst)
>>> doc2
{'agee': 20, 'name': 'jack'}
将list中元素值 作为dict中的key

>>> list = ['name','age','job']
>>> doc3 = dict.fromkeys(list)
>>> doc3
{'age': None, 'name': None, 'job': None}

>>> employee = dict(name="jack",age="100",salary=89999)
>>> employee
{'salary': 89999, 'age': '100', 'name': 'jack'}
in 查询key是否在dict中

>>> name in employee
False
>>> 'name' in employee
True
get获取

>>> employee.get('name')
'jack'
>>> employee['name']
'jack'
key获取键

>>> employee.keys()
dict_keys(['salary', 'age', 'name'])
>>> for key in employee.keys():
	print(key)

	
salary
age
name
values获取值

>>> employee.values()
dict_values([89999, '100', 'jack'])
items获取所有的数据键值

>>> for (k,v) in employee.items():
	print('{} -> {}'.format(k,v))

	
salary -> 89999
age -> 100
name -> jack
len长度

>>> len(employee)
3
copy复制

>>> em = employee.copy()
>>> em
{'salary': 89999, 'age': '100', 'name': 'jack'}
clear清除

>>> em.clear()
>>> em
{}
修改内容

>>> employee['name'] = 'yang'
>>> employee
{'salary': 89999, 'age': '100', 'name': 'yang'}
update更新

>>> em = dict(coure='english')
>>> employee
{'salary': 89999, 'age': '100', 'name': 'yang'}
>>> employee.update(em)
>>> employee
{'salary': 89999, 'age': '100', 'coure': 'english', 'name': 'yang'}
del删除

>>> c = employee
>>> del c['name']
>>> employee
{'salary': 89999, 'age': '100', 'coure': 'english'}
>>> c
{'salary': 89999, 'age': '100', 'coure': 'english'}
pop删除

>>> d
{'salary': 89999, 'age': '100', 'coure': 'english'}
>>> d.pop('age')
'100'
>>> d
{'salary': 89999, 'coure': 'english'}
popitem删除

>>> em = employee.copy()
>>> em.popitem()
('salary', 89999)
>>> em
{'age': '100', 'coure': 'english'}
>>> employee
{'salary': 89999, 'age': '100', 'coure': 'english'}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值