下面的代码行用于计算语句中分配给变量"message"的单个字母的数量。
message = 'It was a bright cold day in April, and the clocks were striking thirteen'
count = {}
for character in message:
count.setdefault(character, 0)
count[character] = count[character] + 1
print(count)
代码成功运行,输出如下
x一个一个一个一个x一个一个二个x
请问这部分代码在程序中做什么
count[character] = count[character] + 1
2条答案
按热度按时间pftdvrlh1#
您在问题中提到的代码行:
1.提取给定键(字符)的现有字典值,并将其递增1
count[character] + 1
。1.更新键
count[character] =
的值。由于setdefault方法返回给定键的当前值,因此实际上可以使代码更短一些:
mnemlml82#
count[character] = count[character] + 1
本质上是将当前字符的计数加1,所以首先,setdefault()
是一个函数,它检查当前计数是否存在于字典中,如果不存在,则将其添加默认值0,然后在字典中,那个字符会加1。让我给予个例子。如果我们在第一个message
中的第(零)个字符,'I',setdefault()
检查'I'是否已经在字典中,然后将其值与0相加。然后递增1。这意味着字典中'I'的值现在是1
。