[Rastreador web Python] 150 conferencias para obtener fácilmente las notas del curso pago del rastreador web Python Capítulo 13: almacenamiento de datos: formato de cadena JSON

1. Descripción general de JSON

JSON (JavaScript Object Notation, JS Object Notation) es un formato de intercambio de datos ligero. La estructura jerárquica concisa y clara hace que JSON sea un lenguaje de intercambio de datos ideal.

Formatos de datos compatibles con JSON:

  • Objeto (diccionario): llaves
  • Matriz (lista): corchetes
  • Tipo de cadena: se deben usar comillas dobles, no se pueden usar comillas simples
  • Entero, punto flotante, booleano, nulo, etc.
  • Use comas para separar varios datos
  • json es esencialmente una cadena

Analizador json en línea: http://json.cn/

{"Person": [{"username": "张三", "age":18}]}

json :
{
    "Person":[
        {
            "username":"张三",
            "age":18
        }
    ]
}

 

2. Funciones de uso común de json

2.1 Convierta el objeto python en una cadena json

  • volcados : convierte objetos de Python en cadenas de formato json;
  • el volcado : convertir el objeto python json en una cadena de formato, y también puede recibir un puntero de archivo, los parámetros de fp se pueden escribir en un archivo en

Ambos métodos tienen un parámetro, secure_ascii  es True de forma predeterminada, lo que significa que solo se pueden almacenar caracteres ASCII de forma predeterminada; si desea almacenar chino, establezca el parámetro secure_ascii en False.

Al escribir objetos de Python, no necesita prestar más atención para seguir los requisitos de formato json, simplemente escriba Python correctamente, porque la función dumps / dump convertirá automáticamente Python al formato json.

import json

books = [
    {
        "name": "三国演义",
        "price": 18.8
    },
    {
        "name": "水浒传",
        "price": 19.9
    }
]
# dumps
result = json.dumps(books, ensure_ascii=False)
print(result, type(result))

#dump
fp = open('books.json', 'w', encoding='utf-8')
json.dump(books, fp, ensure_ascii=False)
fp.close() 
#open 之后需要手动close文件

2.2 Convierta la cadena json en un objeto python

  • cargas : convierte cadenas json en objetos python
  • cargar : convierta la cadena json en un objeto python, y puede obtener la cadena json directamente desde el archivo
import json

json_str = '[{"name": "三国演义", "price": 18.8}, {"name": "水浒传", "price": 19.9}]'

print(type(json_str))
result = json.loads(json_str)
print(result)
print(type(result))

print('*'*20)
# load
with open('books.json', 'r', encoding='utf-8') as fp:
    result = json.load(fp)
    print(result)
    print(type(result))

Use con abrir para abrir el archivo sin cerrarlo manualmente

Y al obtener el contenido del archivo, lo mejor es especificar el código de análisis, de lo contrario será fácil informar errores

Supongo que te gusta

Origin blog.csdn.net/weixin_44566432/article/details/108723200
Recomendado
Clasificación