定义一个生成器函数,传入英文字符串,只选出其中长度超过4的单词,顺序返回这些单词
时间: 2024-10-13 16:05:48 浏览: 22
用c语言实现 计算一个字符串中单词的个数
5星 · 资源好评率100%
在Python中,你可以通过定义一个生成器函数来实现这个需求。生成器是一种特殊的迭代器,它可以在需要的时候逐个生成值,而不是一次性计算所有结果,这对于处理大量数据非常有效。下面是一个简单的示例:
```python
def select_long_words(text):
# 将文本分割成单词列表
words = text.split()
# 生成器函数,遍历每个单词并检查其长度是否大于4
for word in words:
if len(word) > 4:
yield word
# 使用生成器
text = "This is a sample string to demonstrate generator functions."
long_word_generator = select_long_words(text)
# 按顺序打印长单词
for long_word in long_word_generator:
print(long_word)
```
当你运行这段代码时,它会依次返回文本中长度大于4的单词。如果你希望获得一个列表,可以稍微调整一下:
```python
long_words_list = [word for word in select_long_words(text)]
print(long_words_list)
```
阅读全文