使用键开始字符访问Python字典值
发布于 2021-01-29 15:14:29
我想知道:是否可以使用不完整的键访问dict值(只要给定字符串的条目不超过一个)?例如:
my_dict = {'name': 'Klauss', 'age': 26, 'Date of birth': '15th july'}
print my_dict['Date']
>> '15th july'
这可能吗?怎么做?
关注者
0
被浏览
50
1 个回答
-
您无法直接使用来执行此操作
dict[keyword]
,您必须遍历dict并将每个键与关键字进行匹配,如果找到了关键字,则返回相应的值。这将是一项O(N)
操作。>>> my_dict = {'name': 'Klauss', 'age': 26, 'Date of birth': '15th july'} >>> next(v for k,v in my_dict.items() if 'Date' in k) '15th july'
要获取所有这些值,请使用列表推导:
>>> [ v for k,v in my_dict.items() if 'Date' in k] ['15th july']
使用
str.startswith
,如果你只希望它的键与“日期”开始的值:>>> next( v for k,v in my_dict.items() if k.startswith('Date')) '15th july' >>> [ v for k,v in my_dict.items() if k.startswith('Date')] ['15th july']