Разбор файла JSON для сбора данных и сохранения в списке / массиве - PullRequest
0 голосов
/ 07 февраля 2019

Я пытаюсь создать настройку IOT.Я подумываю об использовании файла json для хранения состояний датчиков и индикаторов установки.

Я создал функцию для проверки моей концепции.Вот что я написал до сих пор для данных:

            {
                "sensor_data": [
                    {
                        "sensor_id": "302CEM/lion/light1",
                        "sensor_state": "on"
                    },
                    {
                        "sensor_id": "302CEM/lion/light2",
                        "sensor_state": "off"
                    }
                ]
            }

            def read_from_db():
                with open('datajson.json') as f:
                    data = json.load(f)

                for sensors in data['sensor_data']:
                    name = sensors['sensor_id']



            read_from_db()

Что я хочу сделать, это проанализировать sensor_id в массив, чтобы я мог получить к ним доступ, например, имя датчика имя_сенсора [0],Я не уверен, как это сделать.Я пробовал array.array, но он не сохраняет никаких значений, также пробовал .append, но не тот результат, который я ожидал.Есть предложения?

1 Ответ

0 голосов
/ 07 февраля 2019

Если я правильно понял, все, что вам нужно сделать, это назначить все эти датчики на names, используя цикл for, а затем вернуть результат:

import json

def read_from_db():
    with open('sensor_data.json') as f:
        data = json.load(f)
        names = [sensors['sensor_id'] for sensors in data['sensor_data']]
        return names

sensor_names = read_from_db()
for i in range(len(sensor_names)):
    print(sensor_names[i])

Это выведет:

302CEM/lion/light1
302CEM/lion/light2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...