json é um tipo de estrutura de dados de valor-chave comum a todos os idiomas, assim como um dicionário em Python.No Python, strings e dicionários json podem ser convertidos por meio do módulo json.
1. Converta o dicionário em uma string json
1 importação json 2 dic = {'zll': { 3 'endereço': 'Pequim', 'idade': 28}, 4 'ljj': { 5 'endereço': 'Pequim', 'idade': 38} 6 } 7 res = json.dumps (dic, garantir_ascii = Falso, indentar = 5) # Transformar o dicionário em uma sequência json 8 # garantir_ascii = Falso chinês é exibido em chinês; caso contrário, chinês é exibido como codificação 9 # indent = 5 travessão 5 células 10 impressão (res)
2. Converta o dicionário em json e grave-o no arquivo (json.dumps)
1 importação json 2 dic = { 3 'zll': { 4 'addr': 'Beijing', 5 'age': 28 6}, 7 'ljj': { 8 'addr': 'Beijing', 9 'age' : 38 10} 11} 12 fw = aberto ('user_info.json', 'w', codificação = 'utf-8') # abre um arquivo 13 dic_json = json.dumps (dic, assegure_ascii = Falso, indent = 5) # Dicionário para json 14 fw.write (dic_json) # Escrever no arquivo
3. json.dump é gravado automaticamente no arquivo
1 importação json 2 dic = { 3 'zll': { 4 'addr': 'Beijing', 5 'age': 28 6}, 7 'ljj': { 8 'addr': 'Beijing', 9 'age' : 38 10} 11} 12 fw = open ('user_info.json', 'w', encoding = 'utf-8') # abre um arquivo 13 dic_json = json.dump (dic, fw, sure_ascii = False, indent = 4) # O dicionário é convertido em json e o arquivo é operado diretamente sem escrever
4. Use json.loads para converter a sequência json no arquivo em um dicionário
1 importação json 2 f = aberto ('user_info.json', codificação = 'utf-8') 3 res = f.read () # Use json.loads para ler o arquivo primeiro 4 product_dic = json.loads (res) # put Converter string json no dicionário 5 print (product_dic)
5. Use json.load sem ler o arquivo primeiro, basta usá-lo diretamente
1 importação json 2 f = aberto ('user_info.json', codificação = 'utf-8') 3 product_dic = json.load (f) # passa um objeto de arquivo, ele ajuda a ler o arquivo 4 print (product_dic)
6, função de conteúdo de arquivo de leitura / gravação
1 import json 2 def op_data (nome do arquivo, dic = None): 3 if dic: # Quando o dic não estiver vazio, escreva no arquivo 4 com open (filename, 'w', encoding = 'utf-8') como fw: 5 json.dump (dic, fw, sure_ascii = False, indent = 4) 6 else: # Quando o dic estiver vazio, leia o conteúdo do arquivo 7 com open (nome do arquivo, 'r', codificação = 'utf-8') como fr: 8 retornar json.load (fr)