[PYTHON] Je souhaite trier une liste dans l'ordre des autres listes

Qu'est-ce que tu veux faire

Je veux trier les noms des gens par âge

Si personne n'a le même nom

Quand il y a deux tableaux comme celui ci-dessous, je veux remplacer les noms selon l'ordre de tri des âges.

names = ["Alice", "Bob", "Charlie"]
ages = [10, 30, 20]

Cela fonctionne, mais

people = {name: age for name, age in zip(names, ages)}
people = sorted(people.items(), key=lambda x: x[1])
names_sorted = [name for name, _ in people]  # ['Alice', 'Charlie', 'Bob']

Cette méthode ne fonctionne pas s'il y a des personnes portant le même nom.

S'il y a une personne avec le même nom

names = ["Alice", "Bob", "Charlie", "Charlie"]
ages = [10, 30, 20, 5]

Quand je fais un dictionnaire, le second Charlie écrase le premier

people = {name: age for name, age in zip(names, ages)}
people = sorted(people.items(), key=lambda x: x[1])
names_sorted = [name for name, _ in people]  # ['Alice', 'Charlie', 'Bob']

Si vous l'essayez sans en faire un dictionnaire, cela fonctionnera.

people = [[name, age] for name, age in zip(names, ages)]
people = sorted(people, key=lambda x: x[1])
names_sorted = [name for name, _ in people]  # ['Charlie', 'Alice', 'Charlie', 'Bob']

Recommended Posts

Je souhaite trier une liste dans l'ordre des autres listes
Je souhaite voir une liste de fichiers WebDAV dans le module Requêtes
Je souhaite définir un cycle de vie dans la définition de tâche d'ECS
Je veux rendre le type de dictionnaire dans la liste unique
Je veux imprimer dans la notation d'inclusion
Je veux connaître la population de chaque pays du monde.
[Python] Trier la liste de pathlib.Path dans l'ordre naturel
Je veux créer une fenêtre avec Python
Copiez la liste en Python
[Introduction à Python] Comment trier efficacement le contenu d'une liste avec le tri par liste
Je souhaite stocker les informations de la base de données dans la liste
[Linux] Une commande pour obtenir une liste des commandes exécutées dans le passé
Je veux convertir par lots le résultat de "chaîne de caractères" .split () en Python
Je veux expliquer en détail la classe abstraite (ABCmeta) de Python
Je veux colorer une partie de la chaîne Excel avec Python
Je souhaite laisser une commande arbitraire dans l'historique des commandes de Shell
Trier les éléments de la liste dans l'ordre spécifié en Python
J'ai fait un programme pour vérifier la taille d'un fichier avec Python
J'ai essayé d'afficher la valeur d'altitude du DTM dans un graphique
Je souhaite personnaliser l'apparence de zabbix
Python: je souhaite mesurer proprement le temps de traitement d'une fonction
Je veux afficher la progression en Python!
Je veux utiliser quatre règles compliquées dans l'instruction IF du modèle Django! → Utilisez un modèle personnalisé
Comment passer le résultat de l'exécution d'une commande shell dans une liste en Python
L'histoire de l'adresse IPv6 que je souhaite conserver au minimum
Je souhaite utiliser Python dans l'environnement de pyenv + pipenv sous Windows 10
J'ai créé une commande appdo pour exécuter des commandes dans le contexte de l'application
Je veux ajouter du silence pendant 1 seconde au début d'un fichier wav
Je souhaite stocker les résultats de% time, %% time, etc. dans un objet (variable)
Comment obtenir une liste de fichiers dans le même répertoire avec python
Je souhaite intégrer une variable dans une chaîne Python
Je veux facilement implémenter le délai d'expiration en python
Je veux écrire en Python! (2) Écrivons un test
Je veux échantillonner au hasard un fichier avec Python
Je veux bien comprendre les bases de Bokeh
Je veux travailler avec un robot en python.
Je souhaite installer un package de Php Redis
[Python] Je veux faire d'une liste imbriquée un taple
Je veux écrire en Python! (3) Utiliser des simulacres
[Python] Comment afficher les valeurs de liste dans l'ordre
Je veux utiliser le jeu de données R avec python
Je souhaite augmenter la sécurité de la connexion SSH
Comment identifier l'élément avec le plus petit nombre de caractères dans une liste Python?
Je souhaite prendre une capture d'écran du site sur Docker en utilisant n'importe quelle police
Comment vérifier en Python si l'un des éléments d'une liste est dans une autre liste
Je veux faire quelque chose comme sort uniq en Python
Je veux démarrer beaucoup de processus à partir de python
Je souhaite utiliser uniquement le traitement de normalisation SudachiPy
Je veux obtenir des informations sur le fonctionnement de Yahoo Route
Combinez des listes dans un DataFrame avec des pandas
Trier le tableau de chaînes par ordre de longueur et syllabaire japonais
Je veux déterminer l'authenticité d'un élément du tableau numpy
Comment obtenir la dernière (dernière) valeur d'une liste en Python
Comment obtenir une liste d'exceptions intégrées pour python
Je veux connaître la nature de Python et pip
Keras Je veux obtenir la sortie de n'importe quelle couche !!
Je veux aligner les nombres valides dans le tableau Numpy
Je veux connaître la légende du monde des technologies informatiques