Python:打印到文件直到空行?

2024-04-26 10:15:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前有:

for i in range (srange, erange):
    lines=open("%s\%s\propkaoutputfiles\propka_protein_output_%s%s.pka" %(filepath, name, aminoacid, i), "r")
    FILE=open("%s\%s\propkamanip\%sinpropka%s.txt" %(filepath, name, aminoacid, i), "w")
    for line in lines:
        if "0.00    0" and " B   7."in line and (line.split()[0]) == "%s" %aminoacid:
            print >> FILE, " %s in %s Structure %s" %(aminoacid, name, i)
            print >> FILE, line
        if "0.00    0" and " B   8."in line and (line.split()[0]) == "%s" %aminoacid:
            print >> FILE, " %s in %s Structure %s" %(aminoacid, name, i)
            print >> FILE, line

我正在读取的数据如下所示,因此我希望在“if-in-line”中嵌入一个代码,该代码将在满足该条件时采用该行,并将文档中的下一行打印到新文件中,直到找到空行:

赖氨酸B 8.X 0.00 0

赖氨酸B

赖氨酸B

这里是空行

参数B 8.9 0.00

这里是Python新手,谢谢!在


Tags: andnameinforiflineopenstructure
1条回答
网友
1楼 · 发布于 2024-04-26 10:15:30
file1 = open("your input file", "r")
file2 = open("your output file", "w")

while True :
    line = file1.readline()
    if line :
        if "your criteria ..... " in line :
            file2.write("your header here\n")
            file2.write(line)
            line = file1.readline()
            while line and line != "\n" :
                file2.write(line)
                line = file1.readline()
    else :
        file1.close()
        file2.close()
        break

相关问题 更多 >