-1

一切都按预期工作,除非写入 info2,有时“143f”行不存在导致 info2 不存在,因此书面格式被破坏。

with open("saved") as f:
    with open("autolist","a") as f1:
        for line in f:
            ff=False
            if "062" in line:
                trim=line.find('"',64)
                info=line[64:endof]
                print info
                f1.write(info+":")
            if "143f" in line:
                trim=line.find('"',71)
                info2=line[71:endof]
                f1.write(info2+"\n")

如果“143f”行不存在,那么我想写一个“\n”而不是什么都没有。由于某种原因,它不起作用。

4

1 回答 1

6

else一个条款怎么样:

if "143f" in line:
    endof=line.find('"', 71)
    info2=line[71:endof]
    f1.write(info2 + "\n")
else:
    f1.write('\n')

或者,因为你总是写一个换行符:

if "143f" in line:
    endof=line.find('"', 71)
    info2=line[71:endof]
    f1.write(info2)      # note: no newline here
f1.write('\n')
于 2013-05-13T09:37:28.803 回答