用python编写输出一英文串中长度最长的所有单词,将这些单词按在字符串中出现的顺序放在一元组中,如输入' Billy Caroline Andrew Wendy Jennifer Eva ',输出(" Caroline ', Jennifer )。
时间: 2024-03-13 17:43:18 浏览: 61
好的,以下是用 Python 实现的代码:
```python
def find_longest_words(s):
words = s.split() # 将字符串按空格分割成单词
max_len = max(len(w) for w in words) # 找出单词中最长的长度
longest_words = [w for w in words if len(w) == max_len] # 找出所有最长的单词
return tuple(longest_words)
s = 'Billy Caroline Andrew Wendy Jennifer Eva'
longest_words = find_longest_words(s)
print(longest_words)
```
输出结果为:
```
('Caroline', 'Jennifer')
```
代码解释:
1. `find_longest_words` 函数接受一个字符串参数 `s`,返回一个元组,包含字符串中长度最长的所有单词。
2. `words = s.split()` 将字符串 `s` 按空格分割成一个单词列表。
3. `max_len = max(len(w) for w in words)` 找出单词列表中最长的单词的长度。
4. `longest_words = [w for w in words if len(w) == max_len]` 找出所有长度等于最长长度的单词。
5. `return tuple(longest_words)` 将最长的单词列表转换成元组并返回。
6. 最后我们调用 `find_longest_words` 函数,并将其返回值赋值给 `longest_words` 变量。最后我们输出 `longest_words` 变量的值。
阅读全文