Teks respons ke json python

JSON (JavaScript Object Notation) adalah format data populer yang digunakan untuk merepresentasikan data terstruktur. Mengirim dan menerima data antara server dan aplikasi web dalam format JSON adalah hal yang umum

Di Python, JSON ada sebagai string. Sebagai contoh

p = '{"name": "Bob", "languages": ["Python", "Java"]}'

Ini juga umum untuk menyimpan objek JSON dalam sebuah file


Impor Modul json

Untuk bekerja dengan JSON (string, atau file yang berisi objek JSON), Anda dapat menggunakan modul

import json
0 Python. Anda perlu mengimpor modul sebelum dapat menggunakannya

import json
_

Parsing JSON dengan Python

Modul

import json
0 memudahkan penguraian string JSON dan file yang berisi objek JSON


Contoh 1. Python JSON untuk mendikte

Anda dapat mengurai string JSON menggunakan metode

import json
2. Metode mengembalikan kamus

import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])

Di sini, person adalah string JSON, dan person_dict adalah kamus


Contoh 2. Python membaca file JSON

Anda dapat menggunakan metode

import json
_3 untuk membaca file yang berisi objek JSON

Misalkan, Anda memiliki file bernama

import json
_4 yang berisi objek JSON


{"name": "Bob", 
"languages": ["English", "French"]
}
_

Inilah cara Anda dapat mengurai file ini


import json

with open('path_to_file/person.json', 'r') as f:
  data = json.load(f)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print(data)
_

Di sini, kami telah menggunakan fungsi

import json
5 untuk membaca file json. Kemudian, file tersebut diuraikan menggunakan metode
import json
_3 yang memberi kita kamus bernama data

Jika Anda tidak tahu cara membaca dan menulis file dengan Python, kami menyarankan Anda untuk memeriksa I/O File Python


Konversi Python ke string JSON

Anda dapat mengonversi kamus menjadi string JSON menggunakan metode

import json
7


Contoh 3. Konversikan dict ke JSON


import json

person_dict = {'name': 'Bob',
'age': 12,
'children': None
}
person_json = json.dumps(person_dict)

# Output: {"name": "Bob", "age": 12, "children": null}
print(person_json)

Berikut adalah tabel yang menunjukkan objek Python dan konversi yang setara ke JSON

PythonJSON Equivalent
import json
8object
import json
9,
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
0array
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
1string
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
2,
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
3,
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
2number
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
5true
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
6false
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
7null

Untuk menulis JSON ke file dengan Python, kita dapat menggunakan metode

import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
8


Contoh 4. Menulis JSON ke file


import json

person_dict = {"name": "Bob",
"languages": ["English", "French"],
"married": True,
"age": 32
}

with open('person.txt', 'w') as json_file:
  json.dump(person_dict, json_file)

Pada program di atas, kita telah membuka file bernama

import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
9 dalam mode penulisan menggunakan

{"name": "Bob", 
"languages": ["English", "French"]
}
0. Jika file belum ada, itu akan dibuat. Kemudian,
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
_8 mengubah

{"name": "Bob", 
"languages": ["English", "French"]
}
2 menjadi string JSON yang akan disimpan dalam file
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
9

Saat Anda menjalankan program, file

import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
_9 akan dibuat. File tersebut memiliki teks berikut di dalamnya

{"name": "Bob", "languages": ["English", "French"], "married": true, "age": 32}

Python cukup mencetak JSON

Untuk menganalisis dan men-debug data JSON, kita mungkin perlu mencetaknya dalam format yang lebih mudah dibaca. Ini dapat dilakukan dengan meneruskan parameter tambahan


{"name": "Bob", 
"languages": ["English", "French"]
}
_5 dan

{"name": "Bob", 
"languages": ["English", "French"]
}
6 ke metode
import json
7 dan
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
8


Contoh 5. Python cukup mencetak JSON


import json

person_string = '{"name": "Bob", "languages": "English", "numbers": [2, 1.6, null]}'

# Getting dictionary
person_dict = json.loads(person_string)

# Pretty Printing JSON string back
print(json.dumps(person_dict, indent = 4, sort_keys=True))

Ketika Anda menjalankan program, output akan

{
    "languages": "English",
    "name": "Bob",
    "numbers": [
        2,
        1.6,
        null
    ]
}

Dalam program di atas, kami telah menggunakan


{"name": "Bob", 
"languages": ["English", "French"]
}
_9 spasi untuk lekukan. Dan, kunci diurutkan dalam urutan menaik

Omong-omong, nilai default indent adalah

import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
7. Dan, nilai default sort_keys adalah
import json

person = '{"name": "Bob", "languages": ["English", "French"]}'
person_dict = json.loads(person)

# Output: {'name': 'Bob', 'languages': ['English', 'French']}
print( person_dict)

# Output: ['English', 'French']
print(person_dict['languages'])
6

Bagaimana cara mengonversi respons teks ke JSON dengan Python?

Anda bisa mengubahnya menjadi JSON dengan Python menggunakan json. memuat() fungsi . json. fungsi beban () menerima sebagai input string yang valid dan mengubahnya menjadi kamus Python.

Bagaimana cara mengembalikan respons dalam format JSON Python?

Pendekatan. .
Impor modul
Buat Fungsi
Buat Kamus
Konversi Kamus ke Objek JSON Menggunakan metode dumps()
Kembalikan Objek JSON

Bagaimana cara mengembalikan respons di JSON?

Untuk mengembalikan JSON dari server, Anda harus menyertakan data JSON dalam isi pesan respons HTTP dan memberikan "Content-Type. tajuk respons aplikasi/json" . Header respons Tipe-Konten memungkinkan klien menginterpretasikan data dalam badan respons dengan benar.

Bagaimana cara mem-parsing data respons JSON dengan Python?

Untuk mengurai string data JSON ke objek Python, gunakan json. loads() metode paket bawaan bernama json . json. metode beban () mem-parsing string data JSON yang disediakan dan mengembalikan kamus Python yang berisi semua data dari JSON.