简体   繁体   English

在特定行python之前编写

[英]Writing before specific line python

i have this piece of code: 我有这段代码:

asm = open(infile)
asmw = open(outfile, "w")
shutil.copyfile(infile, outfile)
for x in range(0, 8):
    xorreg.append("xor " +  reg[x] + ", " +  reg[x])
for line in asm:
    if any(s in line for s in xorreg):
    found += line.count(xorreg[x])
    print line

i want to write some text lines in the file right before "line" (the one printed) how can i do that? 我想在“行”(已打印的行)之前在文件中写一些文本行,我该怎么做?

Thanks 谢谢

This script appends to every lien containing the string Gandalf a new string The greatest wizard of all times was: 此脚本向包含字符串Gandalf的每个留置权附加一个新字符串The greatest wizard of all times was:

# show what's in the file
with open("some_file.txt", 'r') as f:
    print f.read()

new_content = []
with open("some_file.txt", "r") as asmr:
    for line in asmr.readlines():
        if "Gandalf" in line:
            # we have a match,we want something but we before that...
            new_content += "The greatest wizard of all times was:"
        new_content += line

# write the file with the new content
with open("some_file.txt", "w") as asmw:
    asmw.writelines(new_content)

# show what's in the file now
with open("some_file.txt", 'r') as f:
    print f.read()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM