我在csv上有各种各样的行,但我只想对那些高于0的人进行排序,因为我也有负数,所以我尝试了这个,但似乎无法正常工作
try :
ligacsv = csv.reader(open('%s/liga.csv', 'r')%BASE_DIR, delimiter='|')
except IOError, e
try:
ligacsv = csv.reader(open('C:/www/liga.csv', 'r'), delimiter='|')
except: ligacsv=[]
d = sorted(ligacsv, key=lambda x: (int(x[1])>'0'), reverse=False)
for linha in d:
for i in linha[0:1]]:
print '<td align="right">%s</td>' %i
我在html输出
是的,我写的很难写,我还在学习这门语言。这只是代码的一部分,因为你们得到了一般的想法。
当它的排序我得到像75 74 50 -30 2 15等等
我希望它是75 74 50 15 2.没有数字低于0。
你们能帮助我吗?
答案 0 :(得分:1)
d = sorted([row for row in ligascv if int(row[23])>0],
key = lambda row: int(row[23]),
reverse = False)