目標是運行模塊「printReport」,它讀取文件「arrivals_14_16.txt」,並將文件的前四行寫入文件「text.txt」。但它只寫第一行。如何使用導入從文件寫入另一個文件?
在模塊「readInput.py」中的函數「headerArrivalsFile」中,如果我離開「print line」,最後該函數打印前四行,但如果我在最後留下「return line」它只返回第一行。
但是,模塊「printReport.py」中的「operationReport」函數只在最後如果離開「返回」功能「headerArrivalsFile」,如果我離開「打印」模塊「printReport.py」停止加工。
模塊:readInput.py
def headerArrivalsFile(file_name):
"""
"""
inFile = open(file_name, "r")
for line in inFile:
if "Arrivals:" in line:
break
return line, ## print line, ## (How do I put this work with -> return line,)
inFile.close()
模塊:printReport.py
from readInput import headerArrivalsFile
def operationReport(inputFile, outputFile):
""""
""""
inFile = open(inputFile, "r")
outFile = open(outputFile, "w")
for line in headerArrivalsFile(inputFile):
outFile.write(line)
outFile.close()
inFile.close()
INFILE:arrivals_14_16.txt
Airport: Neverland
Number of belts: 3
Day: 06:11:2014
Period: from 14:00 to 16:00
Arrivals:
KLM75, Amsterdam, 14:35, 60, 50
AF111, Paris, 14:20, 50, 64
LH333, Frankfurt, 14:10, 112, 203
KLM71, Madrid, 14:55, 120, 100
TAP103, Salvador, 15:20, 174, 210
LH123, Berlin, 15:10, 115, 210
不過outFile:test.txt的(我想什麼得到)
Airport: Neverland
Number of belts: 3
Day: 06:11:2014
Period: from 14:00 to 16:00
不過outFile:test.txt的(我能得到什麼)
Airport: Neverland
在函數中,將'return'替換爲'yield'使其成爲發生器。 – 2014-12-04 12:47:22