python函数中带块的yield inside

2024-09-30 18:21:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我不明白调用以下函数时发生了什么:

def doSmth(inFile):
    print inFile
    with open(inFile,'r') as trainSet:
        for instLine in trainSet:

            # do smth
            yield instLine

为什么当删除最后一行有收益时会出错 文件不存在(它确实不存在)。但是,当我有电话的时候 ,没有错误。 另一个问题是,为什么在第二种情况下,打印填充没有效果,而在第一种情况下有效。 谢谢。在


Tags: 函数infordefaswith情况open