Análisis de datos JSON en Python3
JSON (JavaScript Object Notation) es un formato ligero de intercambio de datos.
Si aún no comprendes JSON, primero puedes leer nuestroTutorial de JSON。
En Python3 se puede usar el módulo json para codificar y decodificar datos JSON, este contiene dos funciones:
- json.dumps(): Codifica los datos.
- json.loads(): Decodifica los datos.

Durante el proceso de codificación y decodificación de json, los tipos nativos de Python y los tipos json se convierten entre sí. La correspondencia de conversión específica es la siguiente:
Tabla de conversión de tipos de Python a JSON al codificar:
| Python | JSON |
|---|---|
| dict | object |
| list, tuple | array |
| str | string |
| int, float, int- & float-derived Enums | number |
| True | true |
| False | false |
| None | null |
Tabla de conversión de tipos de JSON a Python al decodificar:
| JSON | Python |
|---|---|
| object | dict |
| array | list |
| string | str |
| number (int) | int |
| number (real) | float |
| true | True |
| false | False |
| null | None |
Ejemplos de json.dumps y json.loads
El siguiente ejemplo demuestra la conversión de una estructura de datos de Python a JSON:
Ejemplo (Python 3.0+)
Al ejecutar el código anterior, el resultado es:
Python 原始数据: {'no': 1, 'name': 'Ejemplo', 'url': 'https://www.example.com'}
JSON 对象: {"no": 1, "name": "Ejemplo", "url": "https://www.example.com"}
Según el resultado de salida, se puede observar que los tipos simples, después de codificarse, son muy similares a su salida repr() original.
Continuando con el ejemplo anterior, podemos convertir una cadena codificada en JSON de vuelta a una estructura de datos de Python:
Ejemplo (Python 3.0+)
Al ejecutar el código anterior, el resultado es:
Python 原始数据: {'name': 'Ejemplo', 'no': 1, 'url': 'http://www.example.com'}
JSON 对象: {"name": "Ejemplo", "no": 1, "url": "http://www.example.com"}
data2['name']: Ejemplo
data2['url']: http://www.example.com
Si lo que necesitas manejar es un archivo en lugar de una cadena, puedes usarjson.dump()yjson.load()para codificar y decodificar datos JSON. Por ejemplo:
Ejemplo (Python 3.0+)
Para más información, consulte:https://docs.python.org/3/library/json.html Otras extensiones