再一次,无法绕着作业缠头。我有一个由用户输入创建的列表,我想从列表中找到最长的单词。我已经能够获得列表,但我的输出不正确,我有一个问题,试图比较列表中的单词。我意识到这是一个重复的问题在其他几个线程中,但在尝试这些建议后,我仍然有一个问题。这是我迄今为止所做的,并提前感谢你:
def find_longest_word(wordList):
longest=''
previous=''
for word in wordList:
if len(word)>len(longest):
longest=word
print(longest)
else:
previous=word
print(previous)
print('Please enter a few words and I will find the longest word:','\n')
words = input()
print('\n')
wordList = words.split()
print('The list of words entered is:','\n')
print(wordList)
find_longest_word(wordList)
答案 0 :(得分:4)
您是否尝试过以下操作?
def find_longest_word(wordList):
return max(wordList, key=len)
这个简单的行找到wordList的最大值,比较列表中的值和它们的长度。
答案 1 :(得分:-1)
让我们定义一个单词列表:
wordList = ['word', 'longestWord', 'shorter']
您可以使用
找到最长单词的索引maxIndex = max(enumerate(map(lambda x: len(x), wordList)), key=(lambda x: x[1]))
最后看到最长的单词:
wordList[maxIndex[0]]