2009-07-08 2 views
1

Я разрабатываю настольный плеер для радиоприемника Sirius XM на Python, в котором я хочу отображать таблицу всех каналов и то, что в данный момент воспроизводится на каждом из них. Эти данные канала получают со своего веб-сайта в виде строки JSON.Сравнение и обновление значений массива в Python

Я ищу лучшую структуру данных, которая позволила бы самым простым способом сравнить и обновить данные канала.

Массивы являются проблематичными, потому что я хотел бы иметь возможность ссылаться на элемент по его номеру канала, но если бы я вручную установил каждый индекс, я потерял способность сортировать массив, так как он будет переназначать индекс последовательно (в то время как каналы не в идеальной последовательности).

Другая возможность (я вижу) использует Sqlite, однако я не уверен, что это перебор.

Есть ли более чистый подход для обращения и сохранения этих данных?

ответ

4

Почему не диктовка, номер канала в качестве ключа и «что играет» в качестве значения? Легко сделать из JSON, легко сортировать (sorted(thedict) сортирует по каналам, sorted(thedict, key=thedict.get) сортирует по значению - все операции довольно просты (если вы точно укажете, какие операции вы хотите сделать, я буду счастлив показать соответствующие образцы кода).

2

в такой ситуации, я часто использую в Dict. она смотрит на меня, как самое простое решение.

Я думаю, что Sqlite вызовет некоторые ненужные накладные расходы. Однако это даст вам сохранение данных. Но я предположим, что ваше приложение должно быть в сети, поэтому вам не требуется постоянство