Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menyelesaikan \"indeks rentetan mestilah integer, bukan str\" Ralat dalam Pengendalian Data JSON?

Bagaimana untuk Menyelesaikan \"indeks rentetan mestilah integer, bukan str\" Ralat dalam Pengendalian Data JSON?

Barbara Streisand
Barbara Streisandasal
2024-10-20 20:59:02566semak imbas

How to Resolve

Pengendalian Data JSON: Menyelesaikan Ralat untuk Penukaran Kamus ke JSON

Semasa cuba mengakses data daripada objek JSON, anda mungkin menghadapi ralat "TypeError: indeks rentetan mestilah integer, bukan str." Isu ini timbul apabila cuba mengendalikan data JSON secara salah atau salah faham proses penukaran.

Untuk membetulkan masalah ini, adalah penting untuk memahami peranan json.dumps() dan json.loads(). json.dumps() menukar kamus Python anda kepada rentetan JSON bersiri. Walau bagaimanapun, rentetan ini tidak boleh diakses secara langsung sebagai objek JSON.

Untuk mengakses data, anda mesti memuatkan semula rentetan JSON ke dalam kamus menggunakan json.loads(). Ini menukar rentetan kembali ke kamus Python, membolehkan anda menggunakan sintaks kamus untuk mendapatkan semula data anda.

Untuk pemahaman yang jelas, pertimbangkan contoh kod berikut:

<code class="python">import json

# create a Python dictionary
r = {'is_claimed': 'True', 'rating': 3.5}

# convert it to a JSON string using json.dumps()
json_string = json.dumps(r)

# load the JSON string back into a dictionary using json.loads()
loaded_dict = json.loads(json_string)

# now you can access the data like you would with a normal dictionary
print(loaded_dict['rating'])  # Output: 3.5</code>

Dengan mengikuti langkah ini, anda boleh menukar kamus anda kepada rentetan JSON dengan betul dan memuatkannya semula ke dalam kamus, membolehkan anda mengakses data anda tanpa sebarang ralat.

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan \"indeks rentetan mestilah integer, bukan str\" Ralat dalam Pengendalian Data JSON?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn