我正在用Python开发一个Sirius XM无线桌面播放器,我希望能够显示所有频道的表格以及当前正在播放的频道。此频道数据从其网站获取为JSON字符串。
我正在寻找能够以最干净的方式比较和更新频道数据的最佳数据结构。
数组是有问题的,因为我希望能够通过其通道号引用项目,但是如果我手动设置每个索引,我将失去对数组进行排序的能力,因为它将按顺序重新映射索引(同时通道并不是一个完美的序列。)
另一种可能性(我可以看到)是使用Sqlite,但是我不确定这是否过度。
是否有更简洁的方法来引用和维护这些数据?
答案 0 :(得分:4)
为什么不是一个字母,以频道号作为关键字,“什么在播放”作为价值?易于使用JSON,易于排序(sorted(thedict)
按频道排序,sorted(thedict, key=thedict.get)
按值排序 - 所有操作都非常简单(如果您更准确地指定要执行的操作,我将是很高兴显示相应的代码示例。)
答案 1 :(得分:2)
在这种情况下,我经常使用词典。它在我看来是最简单的解决方案。
我认为Sqlite会导致一些不必要的开销。但是它会为您提供持久的数据。但我想你的应用需要在线,所以你真的不需要持久性