每个键或类有两个值的python字典?

2024-10-04 09:31:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要这种形式的数据结构:

   test_id1: resultValue, timeChecked
   test_id2: resultValue, timeChecked
   test_id3: resultValue, timeChecked
   test_id4: resultValue, timeChecked
   ...

到目前为止,我只使用一个包含id和结果键值的字典来处理它。但我想加上我检查的时间。 最好的办法是什么?我能把值设为元组吗?或者,在这种情况下,新的课程更适合吗? 我的班级需要什么样的外观才能适应上述要求?在


Tags: testid数据结构字典时间形式键值元组
3条回答

一个轻量级的替代方法是namedtuple来创建一个1)保留元组的简单性和2)允许命名(与位置相反)字段访问的类。在

from collections import namedtuple

Record = namedtuple("Record", ["resultValue", "timeChecked"])
s = {"test_id1": Record("res1", "time1"), "test_id2": Record("res2", "time2")}

您现在可以使用这个dict中的值,就像您有一个定义了resultValuetimeChecked字段的类一样。。。在

^{pr2}$

…或简单的元组:

>>> a, b = s["test_id1"]
>>> print a, b
res1 time1

您还可以将pandasDataFrame用于整个结构。除非你计划做一些严肃的数据处理,否则这可能是一种过度的做法,但是了解并直接解决你的问题是件好事。在

Can I make the value a tuple?

是的,我不知道你为什么不想去。如果是为了让查找更容易阅读,你甚至可以把它作为另一本字典的值。在

{"test_id1" : (resultValue, timeChecked)}

或者

^{pr2}$

我认为一个全新的班级在这种情况下太过分了。在

相关问题 更多 >