我不知道自己做错了什么。当我输入一个字符串时,它会给我回信,但只给出了1的出现。有人能说出我做错了吗。
def printDictionary(a):
c=sorted(a)
for char in c:
print(char, c.count(char))
PS我是python的新手
答案 0 :(得分:0)
传递字符串时似乎有效:
>>> printDictionary('abcaab')
a 3
a 3
a 3
b 2
b 2
c 1
所以我假设你将字典传递给printDictionary()
(似乎只是合乎逻辑的)......
该行
c=sorted(a)
将c
字典a
的已排序键分配给c.count(char)
。由于字典键是唯一的,因此字典中只能存在该键的一个实例,因此>>> printDictionary(dict(a=1,b=10,zz=22,ABC=1033))
ABC 1
a 1
b 1
zz 1
始终返回1.
{{1}}
答案 1 :(得分:0)
假设您有这本词典:
{'a': ['ant', 'abacus'], 'b': ['bear']}
你想得到这个输出:
a 2
b 1
然后使用此功能:
def printDictionary(dictionary):
keys = sorted(dictionary)
for key in keys:
print(key, len(dictionary[key]))