Python 从.txt文件中提取行并复制到word.doc
我想从.txt文件中提取几行文本,并将其复制到现有word文档的底部。我有一些东西可以从一个文本文件复制到另一个文本文件,但总体目标是将其复制到word文档的底部以生成报告 我正在使用Python2.6,目前有Python 从.txt文件中提取行并复制到word.doc,python,text,if-statement,ms-word,Python,Text,If Statement,Ms Word,我想从.txt文件中提取几行文本,并将其复制到现有word文档的底部。我有一些东西可以从一个文本文件复制到另一个文本文件,但总体目标是将其复制到word文档的底部以生成报告 我正在使用Python2.6,目前有 with open('Error.txt', 'w') as f1: for line in open('2_axis_histogram.txt'): if line.startswith('Error'): f1.write(line)
with open('Error.txt', 'w') as f1:
for line in open('2_axis_histogram.txt'):
if line.startswith('Error'):
f1.write(line)
else:
f1.write("No Error ")
f1.close()
我不知道我怎样才能把这个转给word
此外,当没有错误且使用else条件时,它会打印出“无错误”加载次数,而我只需要它打印该语句一次。第一个问题:使用Google或StackOverflow搜索:
第二个问题:让“无错误”显示脱离循环…第一个问题:使用谷歌或StackOverflow搜索: 第二个问题:让你的“无错误”显示脱离循环…你应该研究一下 这是一个用于创建、读取和写入Microsoft Office Word 2007 docx文件的模块。您应该查看
这是一个用于创建、读取和写入Microsoft Office Word 2007 docx文件的模块。若要清除无关的
“无错误”
消息,请将else
语句放入for
循环,而不是if
循环,因为后者在每一行都被选中:
with open('Error.txt', 'w') as f1:
for line in open('2_axis_histogram.txt'):
if line.startswith('Error'):
f1.write(line)
break # Exit the for loop, bypassing the else statement
else: # Only executed if the for loop finishes
f1.write("No Error ")
另外,无需关闭
f1
-带的语句已经为您解决了这一问题。要清除无关的无错误消息,请将else
语句放入for
循环,而不是if
语句,因为后者在每一行都被检查:
with open('Error.txt', 'w') as f1:
for line in open('2_axis_histogram.txt'):
if line.startswith('Error'):
f1.write(line)
break # Exit the for loop, bypassing the else statement
else: # Only executed if the for loop finishes
f1.write("No Error ")
此外,无需关闭f1
——带有语句的已经为您解决了这一问题。您查看过谷歌了吗?谷歌把我带到这里:虽然这是一个稍有不同的问题,但它提供了你的答案。“写”只会在它打印多次后发生,因为每行都会发生。另外,您正在中途关闭您的文件…当您使用“with”时不需要关闭注意,在编写python时,使用4个空格作为选项卡。您检查过Google吗?谷歌把我带到这里:虽然这是一个稍有不同的问题,但它提供了你的答案。“写”只会在它打印多次后发生,因为每行都会发生。另外,您正在中途关闭文件…使用“with”时不需要关闭注意,在编写python时,使用4个空格作为制表符。@martineau:已经有一些答案可以处理其他部分-我不太喜欢冗余。嗯,这就是我回答一个双重问题得到的结果:)@martineau:已经有一些答案可以处理另一部分了——我不太喜欢冗余。嗯,这就是我回答两个问题得到的结果:)我试过插入模块,但没有乐趣,它说不能修改docx模块,但我能看到任何想法>我试过插入模块,但没有乐趣,它说不能修改docx模块,但我能看到任何想法>