การดึงข้อมูลจากไฟล์ JSON ใน Python [ซ้ำกัน]

Nov 08 2020

สวัสดีทุกคน! ฉันต้องการชื่อทั้งหมดใน "สตรีมเมอร์" แต่ฉันไม่รู้ว่าจะทำได้อย่างไร บางทีคุณอาจช่วยฉันได้

ขอบคุณ!

ไฟล์ JSON:

    "streamers": [
        {},
        {
            "name": "One\n\n"
        },
        {
            "name": "Two\n\n"
        },
        {
            "name": "Three\n\n"
        }
    ]
}

คำตอบ

jojo_Berlin Nov 08 2020 at 01:51

โอเคโดยพื้นฐานแล้วคุณสามารถทำอะไรได้บ้าง:

import json

names=[]
with open('data.txt') as json_file:
  dict=json.load(json_file)["streamers"]
  for tuple in dict:
    if "name" in tuple:
      names.append(tuple["name"]
print(names)
 

MelvinAbraham Nov 08 2020 at 01:49

คุณสามารถใช้loadวิธีการจากjsonโมดูล ฟังก์ชันนี้ยอมรับตัวจัดการไฟล์โดยเฉพาะไฟล์ JSON จากนั้นจะแปลงเป็นวัตถุพจนานุกรม Python ซึ่งคุณสามารถใช้ได้ทันทีในโค้ดของคุณ

คุณสามารถอ้างถึงตัวอย่างต่อไปนี้:

import json

f = open('path/to/file/file.json')      # Open the JSON file
dictionary = json.load(f)               # Parse the JSON file
f.close()                               # Close the JSON file

streamers = dictionary['streamers']
print(streamers)

เอาต์พุต


[
    {},
    {
        "name": "One\n\n"
    },
    {
        "name": "Two\n\n"
    },
    {
        "name": "Three\n\n"
    }
]
Gabip Nov 08 2020 at 02:00

ลอง:

import json

with open('path/to/file.json') as f:
    names = [x.get("name") for x in json.load(f)["streamers"] if x.get("name")]
    print(names)