Convertir un dictionnaire en chaîne en Python

Samyak Jain 30 janvier 2023
  1. Utilisez le module json pour convertir un dictionnaire en chaîne et revenir en Python
  2. Utilisez les fonctions str() et literal_eval() de la bibliothèque ast pour convertir un dictionnaire en une chaîne et revenir en Python
  3. Utiliser le module pickle pour convertir un dictionnaire en chaîne et revenir en Python
Convertir un dictionnaire en chaîne en Python

Un dictionnaire en Python est une collection ordonnée de valeurs de données stockées dans une paire clé : valeur. Il peut être créé en plaçant des éléments entre des accolades et en les séparant par une virgule. Une chaîne en Python est une séquence de caractères Unicode. Il peut être créé en mettant les caractères entre guillemets simples ou doubles.

Dans ce didacticiel, nous verrons comment convertir un dictionnaire en chaîne et revenir en Python.

Utilisez le module json pour convertir un dictionnaire en chaîne et revenir en Python

json est l’acronyme de JavaScript Object Notation. Ce module produit la sortie en texte brut uniquement. Il prend également en charge les plates-formes et les versions croisées.

Par exemple,

import json

dict = {"Hello": 60}
s = json.dumps(dict)
print(s)
d = json.loads(s)
print(d)

Production:

{"Hello": 60}
{'Hello': 60}

La fonction json.dumps() extrait les données de l’objet json passé en paramètre et les renvoie sous forme de chaîne. La fonction json.loads() prend en paramètre une chaîne et renvoie un objet json.

Utilisez les fonctions str() et literal_eval() de la bibliothèque ast pour convertir un dictionnaire en une chaîne et revenir en Python

Cette méthode peut être utilisée si la longueur du dictionnaire n’est pas trop grande. La méthode str() de Python est utilisée pour convertir un dictionnaire en sa représentation sous forme de chaîne. Le literal_eval() de la bibliothèque ast est utilisé pour convertir une chaîne en un dictionnaire en Python.

Par exemple,

import ast

dict = {"Hello": 60}
str(dict)
ast.literal_eval(str(dict))

Production:

"{'Hello': 60}"
{'Hello': 60}   

Utiliser le module pickle pour convertir un dictionnaire en chaîne et revenir en Python

La fonction dumps() du module pickle permet de convertir un dictionnaire en flux d’octets en Python. La fonction loads() fait le contraire, c’est-à-dire qu’elle est utilisée pour reconvertir le flux d’octets en un dictionnaire en Python.

Par exemple,

import pickle

dict = {"Hello": 60, "World": 100}
s = pickle.dumps(dict)
print(s)
d = pickle.loads(s)
print(d)

Production:

b'\x80\x04\x95\x19\x00\x00\x00\x00\x00\x00\x00}\x94(\x8c\x05Hello\x94K<\x8c\x05World\x94Kdu.'
{'Hello': 60, 'World': 100}

Article connexe - Python String

Article connexe - Python Dictionary