次の関数が呼び出されたときに何が起こっているのかわかりません。
def doSmth(inFile):
print inFile
with open(inFile,'r') as trainSet:
for instLine in trainSet:
# do smth
yield instLine
yield の最後の行が削除されると、ファイルが存在しないというエラーが発生するのはなぜですか (実際には存在しません)。一方、行がある場合、エラーはありません。もう 1 つの質問ですが、2 番目のケースではprint inFileが最初のケースでは効果があるのに効果がないのはなぜですか。ありがとう。