2016-02-12 29 views
0

我试图用数字作为我的字典键。反正用dict()方法启动字典吗?使用整数()

这工作

mydict = { '100':'hundred', '200':'two hundred'} 

这不起作用?

mydict = dict(100='hundred') 

错误说“关键字不能是表达”,我找不到任何解决办法。

谢谢。

+0

'mydict = dict({100:'hundred'})'?不知道除了'mydict = {100:'百''''以外,还有更直接的方式吗? –

回答

0

不,这雾是一个有效的Python标识符,因此它不能以数字开头。

可以读取其中i约字典的部分发现它在这里

https://docs.python.org/2/library/stdtypes.html#typesmapping

像上面的评论说,你可以使用int,因为字典只是哈希字符串,你会得到一个int反正,在int的情况下,它只是散列到它自己。但它不具有的dict()

在该网页上工作,它表明你可以做

mydict =字典(邮政编码([1],[ “一个”))

这是有点丑IMO ,但似乎把工作做好

0

我不能确切地明白你的问题,但你提到使用数字作为字典的关键吗?您只需使用整数,而不是字符串像这样直接启动它..

a = {1:'one',100:'hundered'} 
print a 
{1: 'one', 100: 'hundrered'} 
+0

您好,我试图做同样的事情为你的榜样,只有字典()代替{} – Panupat

+0

的,你可以用这样的,创建您输入的元组,像(1,“一”) ,(2, '2')通过那些作为字典的列表...像字典([((1, '一个'),(2, '2'))] ......即: - >>> A =(1, '一个')>>> b =(2, '2')的dict >>>([A,b]),你会得到这样的,{1: '一',2: '二'} –

0

要使用dict方法,你需要给它列表或元组列表或元组。

>>> dict([(100, 'hundred'), (200, 'two hundred')]) 
{200: 'two hundred', 100: 'hundred'}