各数値がファイルに表示される回数を数え、元の数値とそのカウントを別のファイルに出力しようとしています。元の番号は昇順にソートされます。カウントは十分に近いですが、問題は最後のフォーマットです。どういうわけか私がそれらを印刷する順序を逆にしています!
これは私のコードです:
with open(filename) as f:
prevLine=f.readline()
out = open(outfile,'w')
for line in f:
if line == prevLine:
curCount = curCount+1
else:
out.write("%s \t\t %d\n" % (prevLine , curCount))
curCount =1
prevLine=line
out.close()
最初の数行は次のようにする必要があります。
1 7935
2 4455
3 2956
1 が 7,935 個、2 が 4,455 個、3 が 2,956 個あります。しかし、作成した新しいファイル (outfile) を見ると、次のようになります。
1
7935
2
4455
改行は、数字の間ではなく、最後にある必要があります。なぜこうなった?