N'afficher qu'une partie du retour d'une fonction

Fermé
Medestrac - 13 août 2020 à 16:18
quent217 Messages postés 421 Date d'inscription vendredi 25 septembre 2015 Statut Membre Dernière intervention 1 mars 2024 - 13 août 2020 à 16:54
Bonjour,

Je précise d'emblée que je débute en Python, merci d'y aller doucement ;-)

J'importe un module qui est peu documenté, mais dispose de plusieurs fichiers exemples. Je travaille donc surtout avec du copier/coller.
L'exemple me dit de faire
print(rec.Result())

Ce qui me renvoie:
"{
"result" : [{
"conf" : 1.000000,
"end" : 0.270000,
"start" : 0.060000,
}],
"text" : "ceci est un test"
}"

J'aimerai qu'il n'affiche que "ceci est un test". Comment dois-je procéder?

2 réponses

yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
13 août 2020 à 16:34
bonjour,
un exemple:
def rr():
    a={
      "result" : [{
          "conf" : 1.000000,
          "end" : 0.270000,
          "start" : 0.060000,
        }],
      "text" : "ceci est un test"
    }
    return(a)
print(rr()['text'])
0
quent217 Messages postés 421 Date d'inscription vendredi 25 septembre 2015 Statut Membre Dernière intervention 1 mars 2024 344
13 août 2020 à 16:54
Bonjour,
étant donné l'affichage du résulat, il ne s'agit pas d'un dictionnaire mais d'une chaine de caractères représentant du json.
Soit l'objet rec en question possède une méthode permettant de récupérer directement le dictionnaire, mais là ça dépend du module, soit vous pouvez utiliser le module json de python pour parser la chaine et récupérer le contenu.
0