0

我试图创建一个以时间戳为键的字典。代码是:

    >>> 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()”作为键?

4

2 回答 2

2

'2012-04-12 12:26:13' 是一个字符串,stamp在您的示例中是一个datetime.datetime对象。

您可以将日期时间对象直接用作字典中的键,如文档中所述(两个相同的日期时间将具有相同的哈希)。

于 2012-04-12T10:00:39.197 回答
2

因为stampdatetime.datetime对象。当您print执行此操作时,将打印一个表示该对象的字符串。如果您想要str钥匙,请尝试

new_dict[str(stamp)] = 'one'
于 2012-04-12T09:55:18.977 回答