我试图创建一个以时间戳为关键字的字典。 代码是:
>>> stamp = datetime.datetime(2012, 4, 12, 12, 26, int('13'))
>>> new_dict = {}
>>> new_dict[stamp] = 'one'
>>> print new_dict
{datetime.datetime(2012, 4, 12, 12, 26, 13): 'one'}
>>> print stamp
2012-04-12 12:26:13
为什么不将密钥作为'2012-04-12 12:26:13'而取而代之的是将'datetime.datetime()'作为关键字?
答案 0 :(得分:2)
因为stamp
是datetime.datetime
对象。当您print
时,将打印表示此对象的字符串。如果您需要str
密钥,请尝试
new_dict[str(stamp)] = 'one'
答案 1 :(得分:2)
'2012-04-12 12:26:13'是一个字符串,示例中的stamp
是datetime.datetime
个对象。
您可以直接使用日期时间对象作为词典中的键,如documentation中所述(两个相同的日期时间将具有相同的哈希值)。