python-11 数据结构 - 字典

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/L1558198727/article/details/83013990

字典

创建:
1.字面量
	>>> {"you":90,"liang":80}
	{'you': 90, 'liang': 80}

2.
	通过dict函数创建:
	
	2.1 用列表来创建
	>>> dict1 = dict([["you",90],["liang",80],["zhong",70] ])
	>>> dict1
	{'you': 90, 'liang': 80, 'zhong': 70}
	
	2.2 元组
	>>> dict2 = dict((("you",90),("liang",80),("zhong",70)))
	>>> dict2
	{'you': 90, 'liang': 80, 'zhong': 70}
	
	
	2.3 zip
	>>> dist3 = dict(zip(["you","liang","zhong"],[90,80,70]))
	>>> dist3
	{'you': 90, 'liang': 80, 'zhong': 70}
	
	2.4  赋值方式
	>>> dict7 = dict(a="aaa",b="ddd")
	>>> dict7
	{'a': 'aaa', 'b': 'ddd'}


3.通过fromkeys
	>>> dict4 ={}.fromkeys(["you","liang","zhong"],'大于60')
	>>> dist4
	{'you': '大于60', 'liang': '大于60', 'zhong': '大于60'}
	
	
	默认为空
	>>> dict4 ={}.fromkeys(["you","liang","zhong"])
	>>> dict4
	{'you': None, 'liang': None, 'zhong': None}


4. 推导式
	>>> dict7 = {n:n**2  for n in range(1,5)}
	>>> dict7
	{1: 1, 2: 4, 3: 9, 4: 16}

字典的操作

1.查找:

	键值查找
	>>> dict1
	{'you': 90, 'liang': 80, 'zhong': 70}
	>>> dict1.get("you")
	90
	>>> dict1.get("cha")
	>>> dict1.get("cha","键不存在")
	'键不存在'
	>>> dict1.get("you","键不存在")
	90
	
	类似下标的查找
	>>> dict1["you"]
	90
2.常用函数
	>>> dict1.items()
	dict_items([('you', 90), ('liang', 80), ('zhong', 70)])
	>>> dict1.keys()
	dict_keys(['you', 'liang', 'zhong'])
	>>> dict1.values()
	dict_values([90, 80, 70])

3.遍历输出:
>>> for i in dict1.keys():
	print(i)

you
liang
zhong

可以缺省
>>> for i in dict1:
	print(i)

	
you
liang
zhong

3.成员函数
>>> "you" in dict1
True

4.增删改
>>> dict1["you"] = 100
>>> dict1
{'you': 100, 'liang': 80, 'zhong': 70, 'cha': '10'}

5.合并字典
>>> dict2 = {'a':10}
>>> dict1
{'you': 100, 'liang': 80, 'zhong': 70, 'cha': '10'}
>>> dict2
{'a': 10}
>>> dict1.update(dict2)
>>> dict1
{'you': 100, 'liang': 80, 'zhong': 70, 'cha': '10', 'a': 10}
>>> dict2
{'a': 10}


删除元素:

del()   
>>> del(dict1["you"])
>>> dist1
>>> dict1
{'liang': 80, 'zhong': 70, 'cha': '10', 'a': 10}

del语句
>>> dict2
{'a': 10}
>>> del dict2
>>> dict2
Traceback (most recent call last):
  File "<pyshell#71>", line 1, in <module>
    dict2
NameError: name 'dict2' is not defined

pop():
>>> dict1.pop("liang")
80
>>> dict1
{'zhong': 70, 'cha': '10', 'a': 10}

popitem()
>>> dict1
{'zhong': 70, 'cha': '10', 'a': 10}
>>> dict1.popitem()
('a', 10)
>>> dict1
{'zhong': 70, 'cha': '10'}

>>> dict1
{'zhong': 70, 'cha': '10'}
>>> dict1.clear()
>>> dict1
{}
字典存在,只是将字典清空

猜你喜欢

转载自blog.csdn.net/L1558198727/article/details/83013990
今日推荐