使用.seek(0)作为fileinput方法

时间:2014-06-19 11:51:30

标签: python file-io

我在阅读2组文件时遇到问题。我使用模块fileinput,因为我需要在生产中读取两组文件。 当我尝试重置第二个循环中第二个文件的句柄时出现问题:

fileC = fileinput.FileInput()
#with  sys.stdin as fileC, open(filenameA,'r') as fileA:


#lineC = sys.stdin.readline()

for lineC in fileC:
     fieldC = lineC.split('#')
     #set the pointer to the begining of fileA
     fileA = fileinput.FileInput(glob.glob(locationA2))
     #Initialize p to 0
     p = 0
     for lineA in fileA:
         fieldA = lineA.split('#')
         #Write all the element that have no corresponding conversion
         if (fieldA[0] == fieldC[0]) and (fieldA[2] == fieldC[2]) and (fieldA[1] < fieldC[1]):
             p = 1
     if p == 0:
        #outputfile.write(lineC)
         sys.stdout.write(lineC)

fileA在第一个for循环中定义,因为我无法找到fileA.seek(0)的替代,因为它不适用于FileInput。问题是FileInput()处于循环中并且没有及时优化。

对此有什么想法吗?

由于

0 个答案:

没有答案