私がやっていることは、次のようなデータを含むファイルがあることです:
ben | 2 | 40
germany | 6 | 60
出力として必要なのは::
ben | 2 | 40
germany | 6 | 60
field 1 = 8
field 2 = 100
Pythonで先に進むための解決策を教えてください。
これは私にとって宿題の匂いがするので、完全な解決策ではなく、いくつかの指針を提供することに固執しようと思います.
Python のopen()
関数を使用してファイルを開くことができます。結果のオブジェクトは、 のようにループで繰り返すことができますfor line in myfile:
。ファイルの処理が完了したらmyfile.close()
、 を呼び出す必要があります。「追加」モードでファイルを再度開いて、最後に回答を書き込むことができます。
各行は文字列になり、呼び出しline.split('|')
て行をチャンクにすることができます。複数の割り当てを使用するのが好きです: name, col1, col2 = line.split('|')
. int()
数値を合計できるように、数値を文字列形式から整数形式に変換するために、おそらく を使用する必要があります。
それはおそらくかなり信頼できるスタートだと思いますよね?
おそらくこれを行うためのよりエレガントな方法があります...
results = [0, 0]
with open("\path\to\file.txt") as f:
for line in f:
values = line.split("|")
results[0] += int(values[1])
results[1] += int(values[2])
print("field 1 = " + str(results[0]), "field 2 = " + str(results[1]))