我被困在保存此for循环结果中,我已经在堆栈中进行了各种搜索以保存for循环的输出,但是我确实找到了正确的解决方案。我的代码是:
doc = sys.argv[1]
target = sys.argv[2]
fene = int(sys.argv[3])
a = open(file)
text = a.read()
a.close()
tokens = text.split()
keyword = re.compile(target, re.IGNORECASE)
for index in range( len(tokens) ):
if keyword.match( tokens[index] ):
start = max(0, index-window)
finish = min(len(tokens), index+window+1)
lhs = " ".join( tokens[start:index] )
rhs = " ".join( tokens[index+1:finish] )
print("%s \t \t %s \t \t %s" % (lhs, tokens[index], rhs))
我尝试过
f = open("output.txt", w)
,然后在末尾(行打印)添加了f.write(lsm, tokens[index], rhs)
,此操作无效。甚至将open()放入for循环中。
怎么处理呢?
更新:我想要在txt中的for循环的输出。
答案 0 :(得分:0)
@Michael在评论中回答解释。谢谢
saveme = open('output.txt', 'w')
for index in range( len(tokens) ):
if keyword.match( tokens[index] ):
start = max(0, index-window)
finish = min(len(tokens), index+window+1)
lhs = " ".join( tokens[start:index] )
rhs = " ".join( tokens[index+1:finish] )
print("%s \t \t %s \t \t %s" % (lhs, tokens[index], rhs), file=saveme)
saveme.close()