【发布时间】:2019-03-01 07:59:59
【问题描述】:
所以我试图在这个函数中计算唯一的字母。如果它们是唯一的字母,则返回 True,如果没有则返回 False。在“编程”这个词中 有两个 r 和两个 m 和两个 g。它在实际答案为 False 的情况下返回 True?我的逻辑错了吗?
def unique_chars_in_string(input_string):
unique_chars = {}
if input_string == "":
return True
for letter in input_string:
if letter in unique_chars:
unique_chars[letter]+=1
else:
unique_chars[letter]=1
for k in unique_chars:
if unique_chars[k] > 1:
return False
else:
return True
print(unique_chars_in_string('Programming'))
【问题讨论】:
-
问题正在返回 True,只要某个字母不存在多次...尝试
PProgramming... -
return all(k == 1 for k in unique_chars.values())
标签: python dictionary counting