Python os.listdir未读取所有文件

Python os.listdir未读取所有文件,python,operating-system,listdir,Python,Operating System,Listdir,我试图从文件夹中的每个文件中抽出一行。我编写的代码是打开每个文件并打开新的输出文件,尽管在某些情况下它在每个文件中循环并输出两次数据。我在所有文件之间大约800000行内有15个文件 `import os for filename in os.listdir("path"): fin=open("path\%s" %filename) #print fin fout=open("newdata.txt","w") #print fo

我试图从文件夹中的每个文件中抽出一行。我编写的代码是打开每个文件并打开新的输出文件,尽管在某些情况下它在每个文件中循环并输出两次数据。我在所有文件之间大约800000行内有15个文件

`import os
    for filename in os.listdir("path"):
       fin=open("path\%s" %filename)
       #print fin
       fout=open("newdata.txt","w")
       #print fout
       l=""
       for line in fin:
           p=line.strip().split("\t")
           if p[3]=="Cycle" and p[4]=="Protein":
               l+=line
              fout.write(l)
       #else:pass
  # fin.close()
  # fout.close()`

您在循环中以“w”模式打开文件,因此对于每个新文件,它将从头开始输出文件,您应该在循环外打开它,或者使用“w+”模式,而不是
w
,使用
w+
模式谢谢,我在for循环外打开了新文件,现在它正在读取我的所有文件,虽然它仍然在循环,它读取目录中的每个文件3-4次,并给我一个输出。我只需要读取一次,我尝试了fin.close()和fout.close(),但得到了一个错误。