Exemples de comment sauvegarder un dictionnaire dans un fichier json (JavaScript Object Notation) avec python:
Voir aussi: pickle — Python object serialization et marshal — Internal Python object serialization
Sauvegarder un dictionnaire dans un fichier json
Pour sauvegarder un dictionnaire avec python dans un fichier json, on peut utiliser la fonction json dump(), exemple:
import json
dict = {"member #002":{"first name": "John", "last name": "Doe", "age": 34},
"member #003":{"first name": "Elijah", "last name": "Baley", "age": 27},
"member #001":{"first name": "Jane", "last name": "Doe", "age": 42}}
with open('data.json', 'w') as fp:
json.dump(dict, fp)
le script python ci-dessus va alors créer le fichier 'data.json' suivant:
{"member #002": {"first name": "John", "last name": "Doe", "age": 34}, "member #003": {"first name": "Elijah", "last name": "Baley", "age": 27}, "member #001": {"first name": "Jane", "last name": "Doe", "age": 42}}
Améliorer l'apparence du fichier json
Pour améliorer l'apparence du fichier json et le rendre plus facile à lire, on peut utiliser l'option indent dans la fonction dump()exemple:
import json
dict = {"member #002":{"first name": "John", "last name": "Doe", "age": 34},
"member #003":{"first name": "Elijah", "last name": "Baley", "age": 27},
"member #001":{"first name": "Jane", "last name": "Doe", "age": 42}}
with open('data.json', 'w') as fp:
json.dump(dict, fp, indent=4)
va donner ici:
{
"member #002": {
"first name": "John",
"last name": "Doe",
"age": 34
},
"member #003": {
"first name": "Elijah",
"last name": "Baley",
"age": 27
},
"member #001": {
"first name": "Jane",
"last name": "Doe",
"age": 42
}
}
Trier le fichier json
Avec l'option sort_keys=True on peut aussi trier les clés du dictionnaire:
import json
dict = {"member #002":{"first name": "John", "last name": "Doe", "age": 34},
"member #003":{"first name": "Elijah", "last name": "Baley", "age": 27},
"member #001":{"first name": "Jane", "last name": "Doe", "age": 42}}
with open('data.json', 'w') as fp:
json.dump(dict, fp, sort_keys=True, indent=4)
donne
{
"member #001": {
"age": 42,
"first name": "Jane",
"last name": "Doe"
},
"member #002": {
"age": 34,
"first name": "John",
"last name": "Doe"
},
"member #003": {
"age": 27,
"first name": "Elijah",
"last name": "Baley"
}
}
Références
Liens | Site |
---|---|
json.dump | docs.python.org |
Storing Python dictionaries | stackoverflow |
Reading and Writing JSON to a File in Python | stackabuse |
Python dump dict to json file | stackoverflow |
JSON encoder and decoder | docs.python.org |
pickle — Python object serialization | docs.python.org |
marshal — Internal Python object serialization | docs.python.org |