Python字典的setdefault() 和get()方法比较

枫铃3年前 (2021-09-30)Python206

setdefault() 函数 —有key获取值、没key设置 key:default

 dict.setdefault(key, default=None)
  • 如果 key 在 字典中,返回对应的值。

  • 如果 key 不在字典中,则插入 key 及设置的默认值 default,并返回 default ,default 默认值为 None。

get()函数—有key获取值、没key返回default:

dict.get(key, default=None)
  • 返回指定键的值,如果值不在字典中返回默认值 None。

话不多说,上栗子:

setdefault()方法:

>>> dict = {}  
>>> dict['成龙'] = '演员'  #添加键值对
>>> dict 
{'成龙': '演员'} 
>>> dict.setdefault('成龙' , 'Duang')     # 值('演员')存在,故返回值('演员'),而不是'Duang' 
'演员' 
>>> dict 
{'成龙': '演员'} 
>>> dict.setdefault('窦唯' , '歌手') 
'歌手' 
>>> dict 
{'成龙': '演员', '窦唯': '歌手'}

get()方法:

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
>>> dict.setdefault('波多',18) 
18>>> dict 
{'成龙': '演员', '窦唯': '歌手', '波多': 18} 
>>> dict.get('成龙') 
'演员' 
>>> dict.get('波多') 
18 

附练习:

# 循环迭代message字符串中每个字符,计算每个字符出现的次数
# 涉及的技能包:1.字典的get()和setdeafult()方法 2.漂亮打印pprint
 
import pprint
message = 'It was a bright cold day in May,andd the clocks were striking thirteen.'
count = {}
 
#1 字典的setdefault()方法
for character in message:
    count.setdefault(character,0) #查询此次计数前此字母出现的次数
    count[character] = count[character] + 1 #更新次数(for每次遍历一个字母,故次数加一)
     
pprint.pprint (count)
 
 
count1 = {}
#2 字典的get()方法
for character in message:  
    count1[character] = count1.get(character,0)+ 1 #查询出现次数,并加一
     
print (count1)

相关文章

利用python同步windows和linux文件

写python脚本的初衷,每次在windows编辑完文件后,想同步到linux上去,只能够登录服务器,...

爬虫基本原理

爬虫基本原理 一、爬虫是什么? 百度百科和维基百科对网络爬虫的定义:简单来说爬虫就是抓取目标网站内容的工具,一般是根据定义的行...

Django 函数和方法的区别

函数和方法的区别 1、函数要手动传self,方法不用传 2、如果是一个函数,用类名去调用,如果是一个方法...

Django 知识补漏单例模式

单例模式:(说白了就是)创建一个类的实例。在 Python 中,我们可以用多种方法来实现单例模式&#x...

Django基础知识MTV

Django简介 Django是使用Python编写的一个开源Web框架。可以用它来快速搭建一个高性能的网站。 Django也是一个MVC框架。但是在Dj...

Python mysql 索引原理与慢查询优化

一 介绍 为何要有索引? 一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。