关于python写文件的问题

时间:2009-10-11 07:54:45

标签: python file

我遇到了python编程的奇怪问题。我使用声明'scripelines()'将一系列列表写入一个新文件。在这个过程中我可以通过预览看到文件图标中的上下文,但是一旦程序运行完毕后输出文件出来就是一个空白文件。

简而言之,我的问题是该程序没有任何输出,只有一个空白文件。

以下是代码:

infile=open('/Users/Jim/Desktop/py/result.txt','r')
outfile=open('/Users/Jim/Desktop/py/output.txt','a')
line=infile.readline()
i=1
while(line):
    check=str(i)+':'
    if line.startswith(check):
        i+=1
        block=[infile.readline() for j in range(1,7)]
        judge=block[1].split()
        for j in judge:
            if j=='stem' or j=='differetiation' or j=='differetiating':
                outfile.write(str(i)+':\n')
                outfile.writelines(block)    #check if the paragraph has the given key words, if true then write the paragraph into the output file.
                break
    line=infile.readline()
outfile.close()
infile.close()

如果有帮助的其他一些信息: python版本是2.6.3,os是Mac OS 10.6。

1 个答案:

答案 0 :(得分:2)

我猜这是由不正确的缩进造成的。 break语句应位于if块内。编写的循环只会尝试judge中的第一个选项。检查文件中是否没有混合空格和制表符。