存储具有多个字典的多行的值

问题描述 投票:0回答:1

我正在尝试通过编写一个程序来帮助朋友,该程序不断从冷却机中读取温度更新

代码应通过冷却机数据来记录温度。定期打印以下数据:每台机器的最高温度,最低温度,最高温度和整体前5个温度。

以下格式每5分钟收到一次tempinput。出于解释目的,我在此代码中添加了第二行tempinput(5分钟后收到)。

tempinput = [
{
"Machine":"Cool-01",
"Date":"01/01/2018",
"Time":"12:25:00", 
"CurrTemp":"23.52"},
{"Machine":"Cool-02",
"Date":"01/01/2018",
"Time":"12:25:00", 
"CurrTemp":"22.02"}
]
#tempinput = [
#{
#"Machine":"Cool-01",
#"Date":"01/01/2018",
#"Time":"12:30:00", 
#"CurrTemp":"23.50"},
#{"Machine":"Cool-02",
#"Date":"01/01/2018",
#"Time":"12:30:00", 
#"CurrTemp":"22.12"}
#]

键=机器。然后,我想以每台机器的值保存每台机器最后2小时的值(= 24个读数)。在前24个读数和分配之后,我希望系统“删除”最早存储的值(基于索引不及时,因为这有时是“关闭”)然后将其他23行放在梯子下面并填充删除了最新值的值...

我正在努力如何存储如上所述的数据。在'for key in dict_in_list'之后,我迷路了(不知道如何继续)。我无法理解每台机器存储24行数据。我希望有人可以指出我正确的方向,我的问题没有降级(我搜索了整个Stackoverflow网站,找不到任何我理解/反映我的请求的例子)。提前致谢。

  for dict_in_list in tempinput:
      for key in dict_in_list:
        .....here i am stuck; tried a lot of ways but nothing works
python
1个回答
0
投票

“机器”不是唯一的关键。 “日期”和“时间”等也是关键。我建议你启动一个24个dicts的列表(一个dict是一个完整的读数)并循环遍历那些,填入它们直到最后一个,然后再次从头开始。所以你只需要第一个for-loop。

© www.soinside.com 2019 - 2024. All rights reserved.