JSON (JavaScript Object Notation) — это простой формат обмена данными, который удобен для чтения и написания как людьми, так и компьютерами. Он широко применяется для хранения и передачи информации в веб-приложениях.

В Python есть встроенный модуль json, который позволяет работать с данными в формате JSON. Структуры данных JSON представлены массивами и объектами. В Python массивы JSON соответствуют спискам, а объекты JSON — словарям.

Вот пример данных JSON, представляющих города, как показано ниже:

{ 
    "cities": [ 
        { 
            "name": "New York", 
            "state": "NY", 
            "population": 8419600 
        }, 
        { 
            "name": "Los Angeles", 
            "state": "CA", 
            "population": 3990456 
        }, 
        { 
            "name": "Chicago", 
            "state": "IL", 
            "population": 2718500 
        } 
    ] 
}
Содержание

Чтение файла

Чтобы прочитать данные в формате JSON из файла, можно воспользоваться встроенной функцией open() для открытия файла, а затем функцией json.load() для анализа данных в Python.

Для начала создадим файл с названием «город.json», в который поместим данные в формате JSON, указанные выше.

Теперь давайте напишем код Python для чтения этих данных:

import json 
 
# Open the JSON file for reading 
with open('cities.json', 'r') as file: 
    # Parse JSON data 
    data = json.load(file) 
 
# Display the data 
print(data)

Как анализировать данные

Модуль json также позволяет проанализировать данные в формате JSON, представленные в виде строки, с помощью функции json.loads().

Пример:

import json 
 
json_string = '{"name": "Boston", "state": "MA", "population": 685094}' 
 
# Parse JSON data from a string 
city = json.loads(json_string) 
 
# Display the data 
print(city)

Вы можете увидеть результат ниже:

как получить значения из массива JSON в Python

Извлечение значения из массива

Давайте извлечём значения из массива JSON. В этом массиве JSON содержатся объекты, каждый из которых представляет собой город.

# Using the data loaded earlier from the file 
cities = data['cities'] 
 
# Loop through the array and print each city name 
for city in cities: 
    print(city['name'])

Выход:

New York 
Los Angeles 
Chicago

Извлечение определенных данных

Иногда вам могут потребоваться только определённые данные из JSON. Например, вам нужны только названия городов, в которых проживает более 3 миллионов человек.

# Loop through the array and print names of cities with population > 3 million 
for city in cities: 
    if city['population'] > 3000000: 
        print(city['name'])

Выход:

New York 
Los Angeles

Заключение

В этом уроке мы изучили, как считывать данные в формате JSON из файла и работать с этими данными в Python. Также мы узнали, как извлекать нужные значения и конкретные данные из JSON-массивов.

Модуль json в Python значительно упрощает работу с JSON-данными. Он позволяет преобразовывать JSON в структуры данных Python, такие как списки и словари, и наоборот.

Добавить комментарий