Either the subject is misleading or you misunderstand something. Im am
sorry to tell you the great truth, but there was no list comprehension  in
your code at all, just a list. Comprehension is what Alan wrote for you,
that is the next step in studying Python, when you already understand lists
and loops well.


I understand that my title was a little misleading, and I apologise for the
same. Here is code that worked:

marks = []
for i in range(int(input())):
    name = raw_input()
    score = float(raw_input())
    marks.append([name, score])
marks = sorted(marks, key=lambda score:score[1])
lowest = marks[0][1]
marks = [ x for x in marks if x[1] != lowest]
second_lowest = marks[0][1]
lowest = sorted([x for x in marks if x[1]==second_lowest])
for row in lowest:
    print row[0]

And it worked because I was using list comprehensions for removing the
element from the list. It didn't worked in the for loop before. I wanted to
ask why it didn't worked in for loop but worked in list comprehension.
_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
https://mail.python.org/mailman/listinfo/tutor

Reply via email to