2012-06-01 169 views
-7

聲明我已經創建了一個詞典:蟒蛇在字典值

print dict 

{'a': [['1', ' 2', ' 3']], 'b': [['2', ' 3', ' 4'], ['3', ' 4', ' 2']], 'c': [['1', ' 6', ' 2']]} 

我無法弄清楚如何產生的if語句VAL [0]。

if val[0]dic 
print val[0] 

感謝您的幫助

+0

請發佈所需的輸出 – jamylak

+1

您的問題不清楚,請發帖輸出 – shihongzhi

+0

嗨,對不起,這個不太清楚。我試圖在我的字典中的第一個值上寫一個if語句。如果存在2則打印2.這有幫助嗎? – Dustin

回答

0

我不認爲你想,如果你試圖通過索引來訪問元素的字典類型。 Dictionary是基於散列的查找容器,由一個鍵索引。在您的例子:

>>> va['a'] 
[['1', ' 2', ' 3']] 

可以測試使用鑰匙存在:

if 'a' in va: 
    print('a is in va') 

http://docs.python.org/library/stdtypes.html#dict

+0

嗨,感謝您的幫助, – Dustin

+0

但是,我是在字典的第一個值之後。那有意義嗎? – Dustin

+0

請在發佈前在REPL中測試您的樣品。您的if語句缺少必需的尾部冒號。 –

0

您正在使用索引錯誤的數據類型。如果您想要排序的密鑰,ActiveState上的this post將顯示排序無序字典密鑰的一種方法。

Ordered dictionaries在它們的排序中是穩定的,但仍然不是可索引對象。您需要重新審視您要做的事情,並更清楚地定義您的問題域。