これは私の最初の質問です!Pythonで2行を別々に読む方法
私は、ファイルのようなラインの数百含まれています。オブジェクト
私が個別に各2本のラインを読みたい、各行は、対象、関係を表し
<car> <part_of> <machine>
<motor> <part_of> <car>
を、それらを処理し、出力2か入力ファイルに基づいて3行。 私はこのようなものでした:
opener = open('input.txt') # to read even lines
opener2 = open('input.txt') # to read odd lines
num = 2
for eachline in opener:
if num % 2 == 0:
line1 = opener.readline().split()
sub_line1, rel_line1, obj_line1 = line1[0],line1[1],line1[2]
sub_line1 = line1[0].lstrip("<").rstrip(">")
rel_line1 = line1[1].lstrip("<").rstrip(">")
obj_line1 = line1[2].lstrip("\"").rstrip("\"")
else:
line2 = opener2.readline().split()
sub_line2, rel_line2, obj_line2 = line1[0],line2[1],line2[2]
sub_line2 = line2[0].lstrip("<").rstrip(">")
rel_line2 = line2[1].lstrip("<").rstrip(">")
obj_line2 = line2[2].lstrip("\"").rstrip("\"")
num += 1
を私は出力のためにこれをやった:
output1 = " ".join([sub_line1,rel_line1,obj_line1])
writer.write(output1+"\n")
output2 = " ".join([sub_line2,rel_line2,obj_line2])
writer.write(output2+'\n')
output3 = " ".join([sub_line1,relation,sub_line2])
writer.write(output3+'\n')
注:出力3の入力には存在しません。私は前の2行を組み合わせてこれを追加しています。しかし、毎回奇数行が偶数行によって書き換えられます。どうすればそれらを分けることができますか?
サンプル出力:
<car> <part_of> <machine>
<motor> <part_of> <car>
<car> <part_of> <motor>
各3行目は、前の2行に基づいて構成されています。
PART 2:
行が入力ファイルに存在する場合、それは私が処理しています2つのラインの一つとして、それを含めずに、そのまま「_」どのように私はちょうど出力することができますから始まりますか?この状態をどこに置くことができますか?
ありがとうございます!
偶数ラインと奇数ラインの重要性は何ですか?あなたの例では、彼らは同じように見えます。 – Bemmu