Pythonマルチレベルソート(マルチプロパティソート)csvファイル

1023 ワード

csvファイルを処理する際には、マルチレベルまたはマルチプロパティのソートがよく使用されます.マルチレベルのソートを簡単に行うには、次の方法を使用します.
Python 2.xは、まず第1列であるx[0]昇順に並べ替え、第2列であるx[0]昇順に並べ替えるコードを使用する.降順配列が必要な場合は,sorted関数にreverse=Trueを加える必要がある.
import sys, csv , operator
data = csv.reader(open
('C:\test.csv'),delimiter=',')
sortedlist = sorted(data, key = lambda x: (x[0], int(x[1])))

with open("C:\result_test.csv", "wb") as f:
	fileWriter = csv.writer(f, delimiter=',')
	for row in sortedlist:
		fileWriter.writerow(row)
f.close()

Python 3.xは、まず第1列であるx[0]昇順に並べ替え、第2列であるx[0]昇順に並べ替えるコードを使用する.降順配列が必要な場合は,sorted関数にreverse=Trueを加える必要がある.
import sys, csv , operator
data = csv.reader(open('C:\\test.csv'),delimiter=',')
sortedlist = sorted(data, key = lambda x: (x[0], int(x[1])))

with open("C:\\result_test.csv", "w", newline = '') as f:
	fileWriter = csv.writer(f, delimiter=',')
	for row in sortedlist:
		fileWriter.writerow(row)
f.close()