2010-05-06 9 views
0

J'ai un tableau multidimensionnel en Python.Tableau Python bidimensionnel: Trier second par Premier

Comment puis-je trier le second tableau, par le premier - tout en le maintenant dans le même ordre?

+0

pouvez-vous donner un exemple? qu'est-ce que tu veux dire trier le second par le premier et garder le même ordre? – Stephen

+0

Je ne sais pas exactement comment vous voulez trier votre tableau (s). Pouvez-vous éditer votre question pour fournir un exemple simple avant/après de ce à quoi ressemble votre tableau avant et après son tri? –

Répondre

2

Je ne suis pas sûr de votre réponse si c'est ce que vous voulez, mais jetez un oeil et voyez. Si j'ai un tableau multidimensionnel x:

>>> x = [[100,50,39,69,22,23,19,80,94,72],range(10)] 
>>> print x 
[[100, 50, 39, 69, 22, 23, 19, 80, 94, 72], [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]] 

et je veux trier le deuxième sous-tableau par le premier sous-tableau, je pouvais effectuer les opérations suivantes:

>>> x[1].sort(key = x[0].__getitem__) 
>>> print x 
[[100, 50, 39, 69, 22, 23, 19, 80, 94, 72], [6, 4, 5, 2, 1, 3, 9, 7, 8, 0]] 

Est-ce que vous cherchez?

+1

Pouvez-vous expliquer à quel type d'ordre cela s'oppose-t-il? –

+1

C'est comme si le 0 dans le second tableau a une valeur de 100 attachée à elle qui est sa 'valeur ou clé de tri' et 1 dans le second tableau a 50 comme valeur de tri et ainsi de suite (2 a la valeur de tri 39, 3 a la valeur de tri 69). Je trie le deuxième tableau par les valeurs du premier tableau. C'était ma conjecture quant à ce que le PO demandait. –

Questions connexes