Est-il possible de trier les deux listes(qui font référence les uns aux autres) exactement de la même façon?

D'accord, c'est peut-être pas la meilleure idée, mais j'étais un peu curieux de savoir si c'est possible. Dire que j'ai deux listes:

list1 = [3,2,4,1, 1]
list2 = [three, two, four, one, one2]

Si je lance list1.sort(), il va de sorte qu'il [1,1,2,3,4] mais est-il un moyen de conserver la synchronisation de la liste 2(ainsi que je peux dire, le point 4 appartient à "trois")? Mon problème est que j'ai un joli programme complexe qui fonctionne bien avec des listes, mais je sorte de besoin pour commencer le référencement des données. Je sais que c'est une situation parfaite pour les dictionnaires, mais j'essaie d'éviter les dictionnaires dans mon traitement parce que je n'ai besoin de trier les valeurs de clé(si je dois utiliser des dictionnaires, je sais comment les utiliser).

Fondamentalement la nature de ce programme, les données arrivent dans un ordre aléatoire(comme ci-dessus), j'ai besoin de les trier, les traiter et envoyer les résultats(de l'ordre n'a pas d'importance, mais les utilisateurs doivent connaître le résultat de qui appartient à la clé). J'ai pensé à le mettre dans un dictionnaire en premier, puis le tri de la liste, mais je ne dispose d'aucun moyen de différencier les éléments dans l', avec la même valeur si l'ordre n'est pas maintenu(il peut avoir un impact lors de la communication des résultats auprès des utilisateurs). Donc, idéalement, une fois que je reçois les listes je préfère trouver un moyen de trier les deux listes ensemble. Est-ce possible?

  • Je tiens à souligner que vos variables dans la liste 2 ne pointent pas vers les services de renseignements dans la liste 1. E. g. si le changement d'une valeur, tels que des list1[0]=9 et regardez la liste 2, liste 2[0] sera toujours 3. Avec des entiers en python, il n'utilise pas la référence/pointeur, il copie la valeur. Vous auriez été mieux de passer par la liste 2 = list1[:]
InformationsquelleAutor Error_404 | 2012-03-19