【发布时间】:2017-08-12 09:35:36
【问题描述】:
我正在尝试定义一个接受 2 个字符串的函数,比较这两个字符串,如果它们是 anagram,则返回 True。我不想导入集合。
所以,如果字符串 1 是 python 并且字符串 2 是 nohtyp,它应该返回 True。否则,显然,返回false。到目前为止,这是我的代码:
def check_anagram(str1, str2):
if len(str1) != len(str2):
return False
else:
for i in range(0, len(str1), 1):
if i in range(0, len(str2), 1):
return True
else:
return False
它适用于大多数情况,但是当
str1 是aaaaaaaaaabbbbbbbbbb 而str2 是ababababbbababababab,它返回true
而当str1为xxxyyyxxx,str2为yyyxxxyyy时,也返回True。
对于这两种情况,它应该返回False,但我不知道。
有人可以帮我解决这个问题吗?
【问题讨论】:
-
return ''.join(sorted(str1)) == ''.join(sorted(str2))
标签: python-3.x anagram