使用yield 将上面代码优化下
时间: 2023-10-06 07:11:38 浏览: 73
很好的问题!以下是使用yield对代码的优化示例:
```python
def read_file(filename):
with open(filename) as file:
for line in file:
yield line.strip()
for line in read_file('example.txt'):
# 处理每一行数据
pass
```
这里我们使用了生成器函数`read_file()`中的`yield`语句,它可以将文件数据逐行以生成器的形式返回。每次遍历生成器时,都会跳到下一个`yield`语句,而不是一次性将所有数据一次性返回。这种方法可以避免一次性加载整个文件,避免内存问题,并且可以在遍历时不断处理每一行数据。
阅读全文