Python 我想做一个函数,它接受一个句子并返回一个最长单词的列表以及与最长单词长度相同的单词
下面的代码仅将字符串拆分为一个列表,并选择列表中最长的单词。但现在我还想附加与最长单词长度相同的单词。例如,如果输入为“me dog cat”,则输出应为['dog','cat']Python 我想做一个函数,它接受一个句子并返回一个最长单词的列表以及与最长单词长度相同的单词,python,list,Python,List,下面的代码仅将字符串拆分为一个列表,并选择列表中最长的单词。但现在我还想附加与最长单词长度相同的单词。例如,如果输入为“me dog cat”,则输出应为['dog','cat'] def longest_wordlist(string): string = string.split() longest = '' for i in range(len(string)): if len(string[i]) > len(string[i-1]):
def longest_wordlist(string):
string = string.split()
longest = ''
for i in range(len(string)):
if len(string[i]) > len(string[i-1]):
longest = string[i]
return longest
您可以使用多个if条件,第一个条件检查较长的情况,第二个条件检查相同的长度
def longest_wordlist(string):
string = string.split()
longest = []
longest_length = 0
for i in range(len(string)):
if len(string[i]) > longest_length:
longest = [string[i]]
longest_length = len(string[i])
elif len(string[i]) == longest_length:
longest.append(string[i])
return longest
结果
>>> longest_wordlist("me dog cat")
['dog', 'cat']
您也可以在不使用范围函数的情况下执行相同的操作
def longest_wordlist(string):
string = string.split()
longest = []
longest_length = 0
for word in string:
if len(word)>longest_length:
longest_length=len(word)
longest=[word]
elif len(word)==longest_length:
longest.append(word)
return longest