Maison > Article > développement back-end > Expliquez ce à quoi vous devez faire attention lorsque vous utilisez json en python
Cet article vous présente principalement quelques précautions pour l'opération json de type chaîne en python. L'introduction dans l'article est très détaillée et a une certaine valeur de référence et d'apprentissage pour tous les amis qui en ont besoin peuvent y jeter un œil ci-dessous.
Les méthodes permettant à Python d'utiliser json sont
json.dumps
- Convertir jsonobjet (dictionnaire) en un objet chaîne
json.loads
- Convertir un objet chaîne en objet json (dictionnaire)
Si vous définissez un objet json
jsonstring1={"results":[{"id":"1","name":"\u9ed8\u8ba4\u5206\u7ec4","policy":"4","timer_scan_setting":"{\"last\":\"10.29.13\",\"setting\":\"fulldisk\",\"type\":\"day\",\"hour\":\"13\"}"}, {"id":"2","name":"\u6d4b\u8bd5\u7684","policy":"1","timer_scan_setting":"{\"last\":\"10.29.15\",\"setting\":\"fulldisk\",\"type\":\"day\",\"hour\":\"15\"}"},{"id":"4","name":"\u4ea7\u54c1\u7ec4","policy":"3","timer_scan_setting":"{\"last\":\"10.8.15\",\"setting\":\"disable\"}"}]}
vous pouvez appuyer directement sur json Opérations , comme
print jsonstring1.keys() print jsonstring1['results'][0]['policy']
peut également être tourné à 360 degrés puis utilisé
jsonstring1=json.dumps(jsonstring1) jsonstring1=json.loads(jsonstring1) print jsonstring1.keys() print jsonstring1['results'][0]['policy']
Mais soyez prudent si vous définissez un objet chaîne
jsonstring2='''{"results":[{"id":"1","name":"\u9ed8\u8ba4\u5206\u7ec4","policy":"4","timer_scan_setting":"{\"last\":\"10.29.13\",\"setting\":\"fulldisk\",\"type\":\"day\",\"hour\":\"13\"}"}, {"id":"2","name":"\u6d4b\u8bd5\u7684","policy":"1","timer_scan_setting":"{\"last\":\"10.29.15\",\"setting\":\"fulldisk\",\"type\":\"day\",\"hour\":\"15\"}"},{"id":"4","name":"\u4ea7\u54c1\u7ec4","policy":"3","timer_scan_setting":"{\"last\":\"10.8.15\",\"setting\":\"disable\"}"}]}'''
C'est juste trois guillemets sont ajoutés à l'objet json ci-dessus pour le convertir en chaîne, donc en théorie, vous pouvez directement charger puis appuyer sur l'opération json
json.loads(jsonstring2)
Cependant, en pratique, une erreur est signalée. La raison est à cause des guillemets doubles avant et après les accolades. Il n'a pas été supprimé. De nombreux outils de formatage json en ligne sur Internet ne signaleront pas les erreurs pour ces guillemets doubles, mais Python le fera. Les guillemets doubles ne signalent pas d'erreur car le contenu à l'intérieur sera échappé s'il n'est pas ajouté, donc ne faites jamais entièrement confiance aux outils de vérification du format json en ligne.
Résumé
[Recommandations associées]
1 Tutoriel vidéo gratuit Python
2. 🎜>Tutoriel d'introduction de base de Python
3Tutoriel vidéo orienté objet Python
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!