用戶詢問(Keyerror while using pandas in PYTHON 2.7)爲什麼他在查看詞典時遇到了KeyError
以及他如何避免此異常。我正確使用`all`嗎?
作爲一個答案,我建議他檢查字典之前的密鑰。所以,如果他需要的所有鍵['key_a', 'key_b', 'key_c']
在dictionary
,他可以測試它:
if not all([x in dictionary for x in ['key_a', 'key_b', 'key_c']]):
continue
這樣,他可以無視那些沒有預期的按鍵詞典(被創造出來的JSON的詞典列表從文件加載格式化的行)。 * 如果與此問題相關,請參閱原始問題以獲取更多詳細信息。
一位在Python和SO方面更有經驗的用戶,我認爲這是一個關於其職業和金牌的權威機構,他告訴我我錯誤地使用了all
。我想知道這是否真的如此(因爲我能說的是,那是按預期工作的)以及爲什麼,或者如果有更好的方法來檢查幾個鍵是否都在字典中。
正如你在這裏的問題一樣,但如果你在試圖獲得它的值之前關心一個關鍵字是否在字典中,你總是可以調用字典上的'get()'方法。因此,'dict.get('key',None)'將返回'key'或'None'的值,其中'dict ['key']'可能導致KeyError。 – Jkdc