簡體   English   中英

檢查字典中的鍵內的鍵

[英]Checking the keys inside of the keys in dictionary

有沒有一種方法可以檢查字典鍵內部的內部鍵,以及該元素是否具有key元素,可以從字典中返回相應的值。

例如,檢查鍵元組的第二個元素中是否存在"Hello"元素,如果存在,則返回相應的值。

d = {(1, "Hello"): "a", (2, "Bye"): "b"}
key = "Hello"
# Since "Hello" exist in d's key's element(second position), return "a"

使用下一個(一旦找到匹配項,它將返回)。 通過將默認返回值設置為None,我們確保不會出現StopIteration錯誤,並且現在可以繼續使用字典get函數了。

請注意,在大多數情況下,這比完整查找要快。

key = 'Hello'
d.get(next((t for t in d if key in t), None))

返回值:

'a'

您可以遍歷鍵元組,檢查該元組的第二個值是否等於您想要的值(例如“ hello”),然后返回該鍵的值。 像這樣:

d = {(1, "Hello"): "a", (2, "Bye"): "b"}
key = "Hello"
for k in d:
    if k[1] == key:
        return d[k]

獲取包含該鍵的所有鍵元組的列表; 獲取該列表的第一個元素,並將其用作d的索引。

>>> d = {(1, "Hello"): "a", (2, "Bye"): "b"}
>>> key = "Hello"
>>> d[[key_tuple for key_tuple in d if key in key_tuple][0]]
'a'

是; 但是,您必須遍歷字典中的每個鍵,直到找到所需的“內鍵”為止。 代碼如下:

d = {(1, "Hello"): "a", (2, "Bye"): "b"}
key = "Hello"

for k in d.keys():
    if key in k:
        print(d[k])

您可以使用Python的in關鍵字檢查元組中是否存在元素。 這使您可以檢查key是否在key內的任何地方都是“內部密鑰”。

此代碼將輸出a

暫無
暫無

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

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