setdefault()方法在此程序中有什么作用?

时间:2019-05-30 07:59:20

标签: python dictionary setdefault

我查找了一个循环遍历消息变量字符串中每个字符的程序,计算每个字符出现的频率。

我不知道它们的作用:

count.setdefault(character, 0)
count[character] = count[character] + 1

enter image description here

3 个答案:

答案 0 :(得分:0)

如果未为给定键设置任何值,则字典上的setdefault方法将设置一个值。 在这种情况下,如果以前没有给出计数,则该方法会将字符计数设置为0。

答案 1 :(得分:0)

方法setdefault()get()类似,但是如果键中没有键,则会设置dict[key]=default

dict.setdefault(key, default=None)

key-这是要搜索的密钥。

default-这是在找不到密钥的情况下要返回的值。

在您的示例中

count.setdefault(character,0)

等于:

if not character in count:
    count[character] = 0

答案 2 :(得分:0)

如果关键字不存在,则count.setdefault(character,0)行在字典count中添加键=字符且值= 0的新元素

count[character] = count[character] + 1行将键=字符的值增加到1。

结果是每次出现每个字符都有