发布时间:2019-08-18 13:02:19编辑:auto阅读(1881)
在函数中使用yield时,函数并不会返回数据,而是返回一个生成器对象(generator object),只有当循环遍历时,才会实际运行取得实际的值。
示例一是我看到一本书上的例子,示例二是我将它简化后的例子,功能上没有任何区别。
#示例一:
def fileReadLines():
seek = 0
while True:
with open('/home/python/passwd', 'r') as f:
f.seek(seek)
data = f.readline()
if data:
seek = f.tell()
yield data
else:
return
for item in fileReadLines():
print(item)
#示例二:
def fileReadLine():
with open('/home/python/passwd', 'r') as f:
for line in f:
yield line
for item in fileReadLine():
print(item)
上一篇: python提取url
下一篇: python中的struct
51592
51180
41683
38445
32931
29915
28622
23587
23516
21865
2022°
2733°
2282°
2210°
2683°
2238°
2984°
4921°
4779°
3396°