我遇到了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。
答案 0 :(得分:2)
我猜这是由不正确的缩进造成的。 break
语句应位于if
块内。编写的循环只会尝试judge
中的第一个选项。检查文件中是否没有混合空格和制表符。