Python Don';我不知道这是什么原因;dict';对象不可调用";错误
我正在尝试编写一个程序,要求用户输入一个句子,然后计算并显示每个字母的出现次数 我必须使用循环和集合/容器编写一个程序,它计算一个句子输入中的所有字母,并显示每个字母的使用次数<代码>'A'和Python Don';我不知道这是什么原因;dict';对象不可调用";错误,python,loops,collections,containers,Python,Loops,Collections,Containers,我正在尝试编写一个程序,要求用户输入一个句子,然后计算并显示每个字母的出现次数 我必须使用循环和集合/容器编写一个程序,它计算一个句子输入中的所有字母,并显示每个字母的使用次数'A'和'A'算作同一个字母 这是我目前的代码: def split(sentence): return [char for char in sentence] def get_key(val): for key, value in letters.items(): if va
'A'
算作同一个字母
这是我目前的代码:
def split(sentence):
return [char for char in sentence]
def get_key(val):
for key, value in letters.items():
if val == value:
return key
letters = {'a': ['a','A'], 'b': ['b','B'], 'c': ['c','C'], 'd': ['d','D'], 'e': ['e','E'], 'f': ['f','F'], 'g': ['g','G'],
'h': ['h','H'], 'i': ['i','I'],'j': ['j','J'], 'k': ['k','K'], 'l': ['l','L'], 'm': ['m','M'], 'n': ['n','N'], 'o': ['o','O'],
'p': ['p','P'], 'q': ['q','Q'], 'r': ['r','R'], 's': ['s','S'], 't': ['t','T'], 'u': ['u','U'], 'v': ['v','V'], 'w': ['w','W'],
'x': ['x','X'], 'y': ['y','Y'], 'z': ['z','Z']}
sentence = str(input("Enter a sentence: "))
sentence_letters = split(sentence)
i = 0
while i in range(len(sentence_letters)):
actual_letter = sentence_letters[i]
for key,value in letters():
if value == actual_letter:
print(actual_letter + ':' + str(sentence_letters.count(actual_letter)) + 'times')
sentence_letters.remove(actual_letter)
i += 1
else:
i += 1
这是我运行代码时收到的最新消息:
Traceback (most recent call last):
File "main.py", line 21, in <module>
for key,value in letters():
TypeError: 'dict' object is not callable
回溯(最近一次呼叫最后一次):
文件“main.py”,第21行,在
对于键,以字母()表示的值:
TypeError:“dict”对象不可调用
我不知道我做错了什么,我甚至不确定这是否是解决这个问题的正确方法。请注意,这里还有其他有用的想法,只关注您的错误:
查看
字母()。因为字母
不是一个函数(或任何其他可以调用的函数),所以不能调用它。这就是错误告诉您的信息。错误消息非常清楚:您有一个dict
变量,但您试图用它进行函数调用。你在哪里困惑?我想你的意思可能是字母.items()
?