Dictionary Torehension生成内置类型的值

时间:2016-07-15 18:30:29

标签: python python-2.7 dictionary dictionary-comprehension

我想进行词典理解,以获取内置类型str作为值的键列表。

headers = ['Header1', 'Header2', 'Header3']
print dict([(x,str) for x in headers])

输出:

{'Header2': <type 'str'>, 'Header3': <type 'str'>, 'Header1': <type 'str'>}

期望的输出:

{'Header2': str, 'Header3': str, 'Header1': str}

1 个答案:

答案 0 :(得分:5)

执行会在其中包含内置str的字典。

<type 'str'>归因于print调用,该调用将使用从调用对象获得的值。 __str__打印时。 str的值为<type 'str'>

如果您保存字典,请访问其中一个成员并使用它,您将看到 str类:

>>> d = dict([(x,str) for x in headers])
>>> d['Header1'](123)
'123'