Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def remove_lowest_values(weird_list):
- lowest = {} # name -> (value, {index, ...})
- for i, (name, value) in enumerate(weird_list):
- prev = lowest.setdefault(name, (value, {i}))
- if value < prev[0]:
- lowest[name] = (value, {i})
- elif value == prev[0]:
- prev[1].add(i)
- unwanted = set.union(*(vi[1] for vi in lowest.values()))
- return [weird_list[i]
- for i in range(len(weird_list))
- if i not in unwanted]
- print(remove_lowest_values(items))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement