问题:编写一个初始化空列表的程序,然后提示用户输入单个单词并保持提示单个单词,将每个单词添加到列表中,直到用户输入单个句点字符'。'然后打印所有字符串,这些字是字谜。比较应该不区分大小写。 - 可以简单地使用字典,但不是必需的。可以定义适合的函数。
我已经尝试了下面几个版本的代码,我似乎无法弄清楚我做错了什么。有人可以帮助我指出正确的方向/给我一个类似的示例代码吗?我只是被困住了。
def areAnagrams(inputList):
"""Return inputList if words are anagrams, False otherwise"""
inputList = sorted(inputList.lower())
return inputList
inputList = raw_input ("Enter a word period to end: ")
list = []
while inputList != '.':
anagram = inputList
list.append(anagram)
inputList = raw_input("Enter a word (period to end): ")
print "Anagrams:", areAnagrams(inputList)
答案 0 :(得分:1)
只关注检查两个单词是否为字谜的部分,您的功能需要检查两个单词是否长度相同,并且包含所有相同的字母。所以你可以这样做:
def areAnagrams(word1, word2):
if len(word1) == len(word2):
word1Letters = sorted(list(word1))
word2Letters = sorted(list(word2))
if word1Letters == word2Letters:
return True
else:
return False
else:
return False