字典中items = list(counts.items()) 和 items = list(counts) 的区别

items = list(counts.items()) 和 items = list(counts) 有区别。

counts是一个字典,它包含了键值对,其中键表示单词,值表示该单词在字符串中出现的次数。

使用items()方法可以将字典中的键值对以元组的形式返回,每个元组包含两个元素,第一个元素是键,第二个元素是值。

当执行 items = list(counts.items()) 时,会将字典counts中的所有键值对以元组的形式存储到一个列表中,每个元组表示一个键值对。所以,items是一个包含元组的列表,每个元组的第一个元素是单词,第二个元素是该单词在字符串中出现的次数。

当执行 items = list(counts) 时,会将字典counts中的所有键存储到一个列表中,即返回一个由字典中所有键组成的列表。所以,items是一个包含所有单词的列表,但是该列表并不包含每个单词在字符串中出现的次数,因为它只是字典中的键列表。

因此,这两行代码的执行结果是不同的,前者是一个由元组组成的列表,每个元组表示一个键值对,后者是一个只包含键的列表。如果需要获取每个单词在字符串中出现的次数,应该使用 items = list(counts.items())。

注意:counts.items()要括号,否则报错:

items = list(counts.items)
TypeError: 'builtin_function_or_method' object is not iterable

猜你喜欢

转载自blog.csdn.net/m0_62865498/article/details/130519323