


Comment utiliser une liste comme clé de dictionnaire en Python 3 ?
Les dictionnaires sont l'une des structures de données les plus puissantes du langage de programmation Python. Il s'agit d'une structure de données composée de paires clé-valeur. Il présente plusieurs avantages : par exemple, l'accès aux valeurs a une complexité temporelle de O(1), il est économe en mémoire, facile à mettre à jour, à supprimer et à itérer, et fournit de nombreuses fonctions intégrées pour des opérations rapides.
Problèmes qui surviennent lors de l'utilisation directe des listes
Nous suivons ce sujet car des problèmes surviennent lorsque nous essayons d'utiliser des listes comme clés. Les listes sont des types de données mutables en Python. Nous pouvons donc supprimer, mettre à jour et ajouter des valeurs dans la liste. Ainsi, si nous générons une fonction de hachage à partir d'une liste et d'éléments de liste, lorsque les éléments de la liste changent, nous ne pourrons plus trouver la fonction de hachage car la fonction de hachage a changé.
Un autre problème potentiel est que différentes listes peuvent avoir la même valeur de hachage. Si la somme des valeurs de deux listes est la même, leurs valeurs de hachage seront également les mêmes. Dans ce cas, si l'une des listes est utilisée comme clé dans le dictionnaire et qu'une autre liste avec le même hachage est recherchée, le dictionnaire peut donner des résultats incorrects.
Convertir la liste en tuple
Une façon de convertir la liste de clés d'un dictionnaire en tuple et de les utiliser comme clés est d'utiliser cette indirection. Notez que même si les valeurs restent les mêmes, le type de données n'est plus une liste
Grammaire
<variable name> = tuple(<list to convert into tuple>)
Ici, le tuple prend un paramètre, qui est le nom de la liste.
Exemple
Dans le code suivant, nous avons d'abord créé un dictionnaire vide nommé my_dict. Ensuite, nous avons créé notre liste nommée my_list. Nous avons utilisé la méthode tuple pour convertir la liste en un objet Tuple. "Bonjour tout le monde !" comme valeur.
my_dict = {} my_list = [1, 2, 3] my_tuple = tuple(my_list) my_dict[my_tuple] = "Hello, World!" print(my_dict)
Sortie
{(1, 2, 3): 'Hello, World!'}
Convertir la liste en chaîne
Une autre façon consiste à convertir la liste en type de données chaîne. String est également un type de données immuable ; nous pouvons donc l'utiliser comme clé d'un dictionnaire.
Grammaire
<variable name> = ''.join(str(e) for e in <name of the list>)
L'instruction ici prend des éléments individuels de la liste et les combine en une chaîne. La fonction Join joint des séquences de chaînes.
Exemple
Dans le code suivant, nous avons d'abord créé une liste nommée my_list. Ensuite, nous avons utilisé la méthode join qui crée une chaîne d'éléments de liste puisque la chaîne peut être utilisée comme clé de dictionnaire, nous l'avons utilisée comme clé du dictionnaire my_list_str. .
my_list = [1, 2, 3] my_list_str = ''.join(str(e) for e in my_list) my_dict = {my_list_str: 'value'} print(my_dict) print(my_dict[my_list_str])
Sortie
{'123': 'value'} value
Convertir la liste en JSON
Nous pouvons également utiliser le module JSON et les fonctions intégrées pour convertir d'abord la liste en chaîne à l'aide de la méthode dumps, puis l'utiliser comme clé du dictionnaire.
Grammaire
<name of variable< = json.dumps(<name of list<)
Voici la méthode dumps de la bibliothèque JSON, qui sérialise les objets Python en chaînes au format JSON. La méthode dumps accepte le nom de la chaîne en paramètre
Exemple
Dans le code ci-dessous, nous importons d'abord la bibliothèque JSON. Ensuite, nous créons une liste appelée my_list. Nous avons créé un objet sérialisé à partir de la liste en utilisant la méthode dumps. Maintenant, nous avons l'objet sérialisé comme clé de dictionnaire my_dict.
import json my_list = [1, 2, 3] my_key = json.dumps(my_list) my_dict = {my_key: 'value'} print(my_dict)
Sortie
{'[1, 2, 3]': 'value'}
Conclusion
Dans cet article, nous avons appris à utiliser les listes comme clés d'un dictionnaire dans Python 3. Nous avons compris les difficultés auxquelles nous étions confrontés si nous essayions directement de faire des listes comme clés dans le dictionnaire Python. Nous devons donc d'abord convertir les listes. listez le type de données en tuples, chaînes, etc., qui sont des types de données immuables. Nous avons également appris à utiliser le module JSON pour utiliser des listes comme clé de dictionnaire.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Solution aux problèmes d'autorisation Lors de la visualisation de la version Python dans Linux Terminal Lorsque vous essayez d'afficher la version Python dans Linux Terminal, entrez Python ...

Lorsque vous utilisez la bibliothèque Pandas de Python, comment copier des colonnes entières entre deux frames de données avec différentes structures est un problème courant. Supposons que nous ayons deux dats ...

Dans Python, comment créer dynamiquement un objet via une chaîne et appeler ses méthodes? Il s'agit d'une exigence de programmation courante, surtout si elle doit être configurée ou exécutée ...

Comment Uvicorn écoute-t-il en permanence les demandes HTTP? Uvicorn est un serveur Web léger basé sur ASGI. L'une de ses fonctions principales est d'écouter les demandes HTTP et de procéder ...

L'article traite des bibliothèques Python populaires comme Numpy, Pandas, Matplotlib, Scikit-Learn, Tensorflow, Django, Flask et Demandes, détaillant leurs utilisations dans le calcul scientifique, l'analyse des données, la visualisation, l'apprentissage automatique, le développement Web et H et H

Comment enseigner les bases de la programmation novice en informatique dans les 10 heures? Si vous n'avez que 10 heures pour enseigner à l'informatique novice des connaissances en programmation, que choisissez-vous d'enseigner ...

Fastapi ...

Les expressions régulières sont des outils puissants pour la correspondance des motifs et la manipulation du texte dans la programmation, améliorant l'efficacité du traitement de texte sur diverses applications.
