Python - Comment sérialiser et désérialiser du JSON ?

Python - Comment sérialiser et désérialiser du JSON ?

Date de sortie
16/07/2024
Auteur
U
Untitled
“Super, j’ai plein de lignes en chaîne de caractères avec des infos qui semblent pertinentes, mais je fais comment pour récupérer ce qui m’intéresse en masse ?”

Python a dans sa boîte à outils de nombreuses fonctions et méthodes pour solutionner des problématiques.

Dans notre cas, l’API python propose la méthode split() pour nous aider à découper une chaîne de caractères.

La syntaxe :

str.split(sep=None, maxsplit=-1)
  • Le paramètre “sep” sert à définir le séparateur d’une chaîne de caractères. S’il n’est pas spécifié ou None ce sont les espaces, les tabulations, les nouvelles lignes, etc. qui seront utilisés par défaut ;
  • Le paramètre “maxsplit” permet d’imposer un nombre de découpage maximum. La valeur par défaut est -1 ce qui ne limite pas le nombre de découpages.

Pour imager un peu plus, on va prendre en exemple, la donnée de transaction suivante :

transaction = "ID12345 2024-07-15 10:31:43 79.99 EUR"

On veut découper cette transaction qui contient, l’identifiant unique, le moment de la transaction, son montant et sa monnaie.

On utilise donc split() sur cette transaction sans lui spécifier de paramètres :

details = transaction.split()

print(details)
# ['ID12345', '2024-07-15', '10:31:43', '79.99', 'EUR']

Maintenant, prenons un cas où nous devons utiliser un séparateur et où toutes les données ne nous intéresse pas (surtout à la fin pour faire simple 😝) :

transaction = "ID12345|2024-07-15|10:31:43|79.99|EUR|\odf^CX|02I2OINBNDO"

details = transaction.split(sep="|", maxsplit=5)

print(details)
# ['ID12345', '2024-07-15', '10:31:43', '79.99', 'EUR', 'odf^CX|02I2OINBNDO']

details[:-1]
# ['ID12345', '2024-07-15', '10:31:43', '79.99', 'EUR']

Comme vous le remarquez, le dernier élément de la liste regroupe les chaînes de caractères restantes.

Et j’ai utilisé “[:-1]” pour obtenir seulement les données qui m’intéressent : du début jusqu’à l’avant dernier élément.

Merci de votre lecture !