[](
)二、常用操作+内置方法
常用操作和内置方法分为优先掌握(今天必须得记住)、需要掌握(一周内记住)两个部分
1优先掌握
1.1 按key存取值:可存可取
dic之按key存取值
name = {‘name1’:‘lwx’,‘name2’:‘hanye’,‘time’:‘all’}
print(f"name[name1]:{name[‘name1’]}")
name[‘time’] = ‘forever’
print(name)
name[name1]:lwx
{‘name1’: ‘lwx’, ‘name2’: ‘hanye’, ‘time’: ‘forever’}
1.2 长度len
‘’’
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
‘’’
#dic之长度len
name = {‘name1’:‘lwx’,‘name2’:‘hanye’,‘time’:‘all’}
print(f’len(name):{len(name)}’)
len(name):3
1.3 成员运算in和not in
dic之成员运算in和not in
name = {‘name1’:‘lwx’,‘name2’:‘hanye’,‘time’:‘all’}
print(f"‘name1’ in name:{‘name1’ in name}")
print(f"‘lwx’ in name:{‘lwx’ in name}")
‘name1’ in name:True
‘lwx’ in name:False
1.4 删除del,pop,popitem
dic之删除del
name = {‘name1’:‘lwx’,‘name2’:‘hanye’,‘time’:‘all’}
del name[‘time’]
print(name)
print(name.get(‘time’))
{‘name1’: ‘lwx’, ‘name2’: ‘hanye’}
None 如果得不到,返回None
dic之删除pop
name = {‘name1’:‘lwx’,‘name2’:‘hanye’,‘time’:‘all’,‘haha’:‘lala’}
name.pop(‘time’) # 指定key删除
print(f"name.pop(‘haha’):{name.pop(‘haha’)}") #打印删除的key对应的值
print(f"name.get(‘time’):{name.get(‘time’)}")
name.pop(‘haha’):lala
name.get(‘time’):None
dic之删除popitem(),随机删除一个键值对(因为字典无序)
popitem() 方法随机返回并删除字典中的一对键和值。
name = {‘name1’:‘lwx’,‘name2’:‘hanye’,‘time’:‘all’,‘haha’:‘lala’}
print(f"name.popitem():{name.popitem()}")
name.popitem()😦‘haha’, ‘lala’)
1.5 键key、值values、键值对items
dic之键keys()、值values()、键值对items()的输出
name = {‘name1’:‘lwx’,‘name2’:‘hanye’,‘time’:‘all’}
print(f"name.keys:{name.keys()}")
print(f"name.values():{name.values()}")
print(f"name.items():{name.items()}")
name.keys:dict_keys([‘name1’, ‘name2’, ‘time’])
name.values():dict_values([‘lwx’, ‘hanye’, ‘all’])
name.items():dict_items([(‘name1’, ‘lwx’), (‘name2’, ‘hanye’), (‘time’, ‘all’)])
#用列表直接获取
print(list(name.keys()))
print(list(name.values()))
print(list(name.items()))
[‘name1’, ‘name2’, ‘time’]
[‘lwx’, ‘hanye’, ‘all’]
[(‘name1’, ‘lwx’), (‘name2’, ‘hanye’), (‘time’, ‘all’)]
1.6 循环
‘’’
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
‘’’
dic之循环
dic是无序的,但是python3采用了底层优化算法,所以看起来是有序的,但是python2中的字典是无序
name = {‘name1’:‘lwx’,‘name2’:‘hanye’,‘time’:‘forever’}
for k,v in name.items():
print(f’{k: <7} {v}’)
name1 lwx
name2 hanye
time forever
2 需要掌握
2.1 get()
dic之get()
#返回key对应的value,如果key不存在,返回None
#相对于name[]而言,get()的容错性更好
name = {‘name1’:‘lwx’,‘name2’:‘hanye’,‘time’:‘forever’}
print(f"name.get(‘name1’):{name.get(‘name1’)}")
print(f"naem.get(‘hiahiahia’):{name.get(‘hiahiahia’)}")
name.get(‘name1’):lwx
naem.get(‘hiahiahia’):None
2.2 update()
dic之update()
#将一个name2中不存在于name中的增加到name中,name中有的则更新为name2中的value
name = {‘name1’:‘lwx’,‘name2’:‘hanye’,‘time’:‘forever’}
name2= {’
deep’:‘in heart’}
name.update(name2)
print(name)
{‘name1’: ‘lwx’, ‘name2’: ‘hanye’, ‘time’: ‘forever’, ‘deep’: ‘in heart’}
2.3 fromkeys()
dic = dict.fromkeys([‘name’,‘age’,‘sex’],None)
print(f’dic:{dic}’)
dic:{‘name’: None, ‘age’: None, ‘sex’: None}
2.4 setdefault()
key存在时不会做任何操作
key不存在时则增加新的键值对
dic = {‘a’: 1, ‘b’: 2}
print(f"dic.setdefault(‘a’): {dic.setdefault(‘a’,3)}")
print(f"dic: {dic}")
print(f"dic.setdefault(‘c’): {dic.setdefault(‘c’,3)}")
print(f"dic: {dic}")
dic.setdefault(‘a’): 1
dic: {‘a’: 1, ‘b’: 2}
dic.setdefault(‘c’): 3
dic: {‘a’: 1, ‘b’: 2, ‘c’: 3}
#setdefault()的返回值:key对应的值
name = {‘name1’:‘lwx’,‘name2’:‘hanye’,‘time’:‘all’}
res = name.setdefault(‘name’,‘lwx’)
print(res)
lwx
name2 = {}
res2 = name2.setdefault(‘name’,‘lwx’)
print(res2)
lwx
[](
)三、存一个值还是多个值
感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的:
① 2000多本Python电子书(主流和经典的书籍应该都有了)
② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)
[](
)三、存一个值还是多个值
感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的:
① 2000多本Python电子书(主流和经典的书籍应该都有了)
② Python标准库资料(最全中文版)
③ 项目源码(四五十个有趣且经典的练手项目及源码)
④ Python基础入门、爬虫、web开发、大数据分析方面的视频(适合小白学习)
⑤ Python学习路线图(告别不入流的学习)