This way is probably slowe (two scans of the list for l1, and even more
work for l2), but for small lists it's probably simple enough to be
considered:

For a simple list:
>>> l1 = [5, 3, 2, 1, 4]
>>> l1.index(min(l1))
3


For a list of lists:
>>> l2 = [[3, 3, 3, 3], [6], [10], [3, 3, 3, 1, 4], [3, 0, 3, 3]]
>>> mins = map(min, l2)
>>> mins
[3, 6, 10, 1, 0]
>>> pos1 = mins.index(min(mins))
>>> pos1
4
>>> subl = l2[pos1]
>>> subl.index(min(subl))
1

This solution is also fragile:
>>> l3 = [[3], []]
>>> mins = map(min, l3)
Traceback (most recent call last):
  File "<interactive input>", line 1, in ?
ValueError: min() arg is an empty sequence

Bye,
bearophile

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to