c = d[s[0]]
其中c
是一個新變量,d
是一個字典,s
是一個列表。將字典值賦給變量,其中key == list [element]
我正在試圖做的是將一個鍵的值分配到c
從我的列表中第一個元素相同。我知道密鑰在字典中,列表的第一個元素與該密鑰相同。如何將該密鑰的值分配給變量?我寫的代碼給了我一個索引錯誤。
但是,代碼:
a = s[0]
c = d[a]
作品。 爲什麼不是第一次嘗試? 這是用於Windows上的Python 2.7的
c = d[s[0]]
其中c
是一個新變量,d
是一個字典,s
是一個列表。將字典值賦給變量,其中key == list [element]
我正在試圖做的是將一個鍵的值分配到c
從我的列表中第一個元素相同。我知道密鑰在字典中,列表的第一個元素與該密鑰相同。如何將該密鑰的值分配給變量?我寫的代碼給了我一個索引錯誤。
但是,代碼:
a = s[0]
c = d[a]
作品。 爲什麼不是第一次嘗試? 這是用於Windows上的Python 2.7的
我不知道爲什麼它不適合你。畢竟,您的list
也許沒有填充。這應該工作 -
>>> d={'world':'hunger'}
>>> s=['world']
>>> d[s[0]]
'hunger'
>>> c = d[s[0]]
>>> c
'hunger'
>>>
而且Python字典有一個名爲has_key
一個漂亮的功能。它會檢查該字典中是否存在密鑰。我使用這個來防止KeyError
異常...你可以考慮使用它來防止意外崩潰。
謝謝你,這有助於很多 – user2243208 2013-04-11 04:40:57
我不介意吝嗇,但請友善地指出原因。 – user2243208 2013-04-06 20:04:02
我沒有讓你失望,但這很可能是由於你給我們的東西完全不可能給你一個準確的答案。你沒有包含相關的代碼。 – 2013-04-11 04:33:47
對不起,我沒有我寫的代碼。基本上我所擁有的是一個列表,以及該列表的直方圖字典。我對列表進行了排序,然後取出第一個元素並嘗試拉取匹配鍵的值。我的代碼應該像@Srikar Appal一樣工作,但出於某種原因不斷出現索引錯誤。不幸的是,我無法分辨列表或字典上的索引是否已超出索引。我認爲這是我寫這個陳述的方式的一個問題,因爲替代方法的工作沒有問題。 – user2243208 2013-04-11 04:45:21