我试图通过转换我的原始bash脚本来学习Python。 它每5分钟运行一次,基本上执行以下操作:
我用它来跟踪eBay和类似网站上的产品价格。它会在找到较低价格时通知我,并绘制包含产品价格历史记录的图表。
它很简单,我可以在Python中复制算法,但是,当我试图学习它时,似乎有几种类型的对象(列表,序列等),可以更有效地进行存储。我的计划是使用 pickle 甚至是一个简单的数据库解决方案(如 dataset ),而不是搞乱 .csv 文件并提取数据通过粗略的字符串操作。
我还想做的一项改进是将每次获取的绝对时间与其价格一起存储,因此我可以绘制一个" true timed"图,而不是假设每个周期彼此相距5分钟(从未如此)。
因此,我的问题总结为......
假设我需要使用以下数据结构:
Python的最佳策略是什么? 我应该使用字典,列表,集合还是甚至可以为产品创建自定义类?
答案 0 :(得分:0)
首先,如果您计划访问保存特定URL的URL(时间,价格)的数据结构 - 使用字典,因为URL是唯一的(URL将是字典中的键)。
否则你可以保留(URL,(时间,价格))元组的列表。
其次,一个(时间,价格)元组列表,因为您不需要对它们进行排序(它们将按照您插入它们的方式进行排序)。
{} - 字典 [] - 列表 () - 元组 选项1: [(URL,[(时间,价格)])]
选项2: {URL,[(时间,价格)]}