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 jsondict = {"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 jsondict = {"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 jsondict = {"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 |
