以下功能採用格式化等級類型,等級類型編號,等級的csv文件。前10個例子是作業,作業編號,等級。該函數將這些前10列入列表。更改CSV文件以更改打印訂單或數據
此刻它在打印順序assigment,assigment number,grade,但我試圖按照等級,assigment,assigment號碼的順序打印它。
def assigment(file):
res = []
f = open(file,'r+')
reader = csv.reader(f)
for i, line in enumerate(reader):
if i < 10:
res.append((line[0],int(line[1]),int(line[2])))
res.sort(key= lambda x: x[2])
max = res[-1]
min = res[0]
print max
print min
對於它的價值,'key = lambda x:x [2]'可以用'operator.itemgetter(2)'代替。另外'對於我,在列舉行(讀者):如果我<10:'用於行itertools.islice(讀者,10):'。 –
如果你只使用前10行,你爲什麼要迭代整個CVS?當'i'達到10時'break'。另外,爲什麼在每個'append'之後對'res'進行排序,爲什麼不在最後一次呢? –