Skip to main content
 首页 » 编程设计

python之访问其键是带通配符的元组的python字典

2025年05月04日26hnrainll

我有一个以元组为键的字典:

d = { 
    ('John', 'Blue', 1): 100, 
    ('Bill', 'Green', 5): 200, 
    ('Paul', 'Blue', 4): 300, 
    ('Bill', 'Green', 7): 400 
} 

是否可以提取那些匹配的键的值,比如 ('Bill', 'Green', _),这样输出将是 [200, 400 ]?

请您参考如下方法:

不要指望它会很快,但是:

search_key = ("Paul", "Blue") 
values = [value for key, value in d.items() if search_key == key[:len(search_key)]] 

将返回所有匹配的值。

编辑:通过将 key[:2] 替换为 key[:len(search_key)] 此解决方案也适用于只有一个值的键,例如 ("Bill",) 将返回键以“Bill”开头的所有值。