Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapakah `json.loads` Membuang `ValueError: Data Tambahan` Apabila Menghuraikan Fail JSON?

Mengapakah `json.loads` Membuang `ValueError: Data Tambahan` Apabila Menghuraikan Fail JSON?

Barbara Streisand
Barbara Streisandasal
2024-11-19 15:47:02791semak imbas

Why Does `json.loads` Throw a `ValueError: Extra Data` When Parsing a JSON File?

Python json.loads Menunjukkan ValueError: Data Tambahan

Apabila menggunakan json.loads untuk menghuraikan fail JSON, anda mungkin menghadapi ValueError: Ralat data tambahan. Ini menunjukkan bahawa terdapat data tambahan dalam fail JSON melebihi apa yang dijangkakan oleh penyahkod.

Untuk menyelesaikan isu ini, anda boleh mencuba langkah berikut:

Muat Talian Data JSON by Line

Daripada memuatkan keseluruhan fail JSON sekali gus, ulangi fail dan muatkan setiap baris sebagai JSON:

with open('new.json') as infile:
    tweets = []
    for line in infile:
        tweets.append(json.loads(line))

Pendekatan ini mengelak daripada menyimpan objek Python perantaraan dan memastikan bahawa setiap baris dihuraikan sebagai objek JSON yang sah.

Contoh Data

Anda memberikan contoh coretan data daripada fail new.json. Meneliti coretan, nampaknya data terkandung dalam satu baris. Oleh itu, anda boleh terus memuatkan data ke dalam objek JSON menggunakan:

import json

with open('new.json') as infile:
    data = json.load(infile)

Pastikan bahawa fail mengandungi hanya data JSON yang sah dan tiada aksara tambahan yang boleh mencetuskan ValueError: Data tambahan.

Atas ialah kandungan terperinci Mengapakah `json.loads` Membuang `ValueError: Data Tambahan` Apabila Menghuraikan Fail 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