Python:程序在打破循环后不写入文件

时间:2014-06-24 17:44:21

标签: python-2.7 for-loop

我是Python的新手,我正在搞乱代码,我想知道为什么我的代码,当for循环被破坏时,不会写入文件。

但是,当我没有打破for循环时,它会一遍又一遍地写入文件,删除之前的内容(我只希望它循环一次并在第一次迭代时获取数据) ):

            def runExtract(self):
                 with open(self.fileIn) as f:
                    content = f.readlines()
                    #query = f.readlines()
                    for query in content:
                            result=google_search.SearchEngine.search(query, 3)
                            """junk"""
                            file1=open(self.fileOutGoog,'r+b')

                            """junk"""

                            for k in result:   
                                #file.write(str(k.name)+"\t")
                                file1.write(str(k.link)+"\t")
                                #file.write(str(k.description)+"\t")
                                file1.write("\n")
                                #file=open(self.fileOutGoog,'rb')

                            file1.flush() """writes to file, deleting the '/url?q=' from html"""
                            file1.close()
                            file1 = open(self.fileOutGoog,'r')
                            filedata = file1.read()
                            file1.close()

                            newdata = filedata.replace('/url?q=','')

                            file1 = open(self.fileOutGoog,'w')
                            file1.write(newdata)
                            file1.flush()
                            file1.close()


                            result=bing_search.SearchEngine.search(query, 3)
                            """junk"""
                            file2=open(self.fileOutBing,'w')

                            for k in result:
                                #file.write(str(k.name)+"\t")
                                file2.write(str(k.link)+"\t")
                               # file.write(str(k.description)+"\t")
                                file2.write("\n")

                            file2.flush()
                            file2.close()
                            break

                    print("done - check dir for results")
                    f.flush()
                    f.close()

我一直试图解决这个问题两天,但我还没有成功。

0 个答案:

没有答案