Python基础教程:字典类型内置方法,面试必会

[](

)二、常用操作+内置方法

常用操作和内置方法分为优先掌握(今天必须得记住)、需要掌握(一周内记住)两个部分

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学习路线图(告别不入流的学习)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值