簡體   English   中英

使用try來查找字典中是否存在鍵

[英]Using try except to find if a key exist in dictionary

我想知道查找字典中是否存在鍵的最佳方法,而不是一次又一次地訪問鍵的整個列表。 我正在考慮嘗試除。 有什么更好的辦法嗎?

只需使用in運算符:

print('some_key' in my_dict)

Python的方式將是遵循EAFP (比許可更容易請求寬恕)原則。

這意味着假設鍵位於​​dict中,並在不存在的情況下捕獲異常,如下所示:

my_dict = {"key": "value"}
try:
    print my_dict["badkey"]
except KeyError:
    print "No such key found"

如@Mureinik所述,您可以使用:

key_name in dict

返回true或false。 但是,如果您極想使用try和except,則可以使用:

try:
    x = dict[key_name]
except KeyError:
    # Handle error here

對不起,讓您感到困惑。 我知道我可以在dict.keys()中僅使用key_name。 但是我必須搜索所有鍵以知道該鍵是否存在。 所以我在考慮嘗試除上述方法以外的方法。 我的問題是,使用try是否是一種好習慣? 還有其他方法可以達到不訪問所有密鑰的相同目的嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM