F. Petitjean wrote:
Le Wed, 13 Apr 2005 01:13:40 -0600, Steven Bethard a écrit :

praba kar wrote:

list = [[1234,'name1'],[2234,'name2'],[0432,'name3']]

I want to sort only numeric value having array field.
How I need to do for that.

In Python 2.4:

py> import operator
py> seq = [(1234,'name1'),(2234,'name2'),(1432,'name3')]
py> seq.sort(key=operator.itemgetter(0))
py> seq
[(1234, 'name1'), (1432, 'name3'), (2234, 'name2')]

Note that I've changed your name 'list' to 'seq' since 'list' is shadowing the builtin list function in your code, and I've changed your nested lists to tuples because they look like groups of differently typed objects, not sequences of similarly typed objects. See:

STeVe

nice explaination. But, if the items of the list are tuples the default rule for comparing tuples is such that seq.sort() would be sufficient here.

See my other post in this thread. seq.sort() is not stable; if the OP's list looked like:
[(1234,'name3'), (1234,'name1')]
then calling seq.sort() would give
[(1234,'name1'), (1234,'name3')]
instead of
[(1234,'name3'), (1234,'name1')]
which is what I assumed the OP wanted when he said "I want to sort only numeric value".


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

Reply via email to