Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Menghuraikan Pelbagai Objek JSON daripada Fail JSON Lines dalam Python?

Bagaimanakah Saya Menghuraikan Pelbagai Objek JSON daripada Fail JSON Lines dalam Python?

Susan Sarandon
Susan Sarandonasal
2024-11-29 07:05:10113semak imbas

How Do I Parse Multiple JSON Objects from a JSON Lines File in Python?

Memuatkan dan Menghuraikan Berbilang Objek JSON daripada Fail Baris JSON

Apabila cuba memuatkan fail JSON yang mengandungi berbilang objek JSON yang dipisahkan oleh aksara baris baharu (format baris JSON), anda mungkin menghadapi ralat berikut:

ValueError: Extra data: line 2 column 1 - line 225116 column 1 (char 232 - 160128774)

Ralat ini berlaku kerana, semasa setiap baris individu JSON yang sah, fail itu sendiri bukan nilai JSON yang sah kerana tiada senarai peringkat atas atau definisi objek.

Menghuraikan Fail Baris JSON dengan Python

Untuk menghuraikan fail baris JSON, gunakan pendekatan berikut:

import json

data = []
with open('file') as f:
    for line in f:
        data.append(json.loads(line))

Dalam contoh ini, langkah berikut dilakukan:

  1. Muatkan Fail baris JSON sebagai fail teks.
  2. Lelaran pada setiap baris dalam fail.
  3. Untuk setiap baris, huraikan JSON menggunakan json.loads(line).
  4. Tambahkan objek JSON yang dihuraikan pada senarai.

Faedah Menghuraikan JSON Talian

Menghuraikan baris JSON menawarkan beberapa faedah:

  • Ia boleh menjimatkan penggunaan memori dengan memproses setiap baris secara berasingan.
  • Ia membolehkan anda memproses fail besar dengan cekap dengan mengelakkan memuatkan keseluruhan fail ke dalam memori.
  • Ia menjadikannya lebih mudah untuk mengendalikan objek JSON individu, kerana anda boleh mengaksesnya terus dari senarai.

Mengendalikan JSON Dibatasi oleh Aksara Baris Baharu

Jika fail anda mengandungi objek JSON individu yang dibatasi oleh aksara baris baharu, anda boleh menggunakan kaedah yang diterangkan dalam "Bagaimana saya menggunakan 'json ' modul untuk membaca dalam satu objek JSON pada satu masa?" untuk menghuraikan objek individu menggunakan kaedah penimbal.

Atas ialah kandungan terperinci Bagaimanakah Saya Menghuraikan Pelbagai Objek JSON daripada Fail JSON Lines dalam Python?. 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