没有人建议过发电机,我很惊讶。这是我的处理方式:
def words(stringIterable): #upcast the argument to an iterator, if it's an iterator already, it stays the same lineStream = iter(stringIterable) for line in lineStream: #enumerate the lines for word in line.split(): #further break them down yield word
现在,这可以在您可能已经在内存中的简单句子列表中使用:
listOfLines = ['hi there', 'how are you']for word in words(listOfLines): print(word)
但是它在文件上也可以正常工作,而无需读取内存中的整个文件:
with open('words.py', 'r') as myself: for word in words(myself): print(word)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)