python如何检测字典的键中是否含有某串字符?

2024-12-16 17:51:41
推荐回答(3个)
回答1:

1、说明
python中检测字典的键中是否含有某串字符,便利字典键值,再判断字符串是否在键值中即可。

2、示例代码:
# 定义一个字典
dic = {'1984/1/2': 123, '1984/1/3': 0, '1985/1/1': 156}
# 遍历字典键中是否包含1984
for key in dic:
    if '1984' in key:
        print('键值中包含字符串"1984"')
        # 或者需要的其它操作
    else:
        print('键值中不包含字符串"1984"')

3、执行结果:
键值中包含字符串"1984"
键值中不包含字符串"1984"
键值中包含字符串"1984"


4、其它说明:
python使用for in直接操作字典就是遍历字典的键值,python使用in操作来判断字符串中是否包含子串最方便,要优于使用字符串的函数index或者find。

index函数在找不到子串时会报错,find函数会返回-1。

回答2:

d = {'1984/1/2': 123, '1984/1/3': 0, '1985/1/1': 156}
sum1984 = sum([v for k, v in d.items() if k.startswith('1984')])

回答3:

DICT = {'1984/1/2':123, '1984/1/3':0, '1985/1/1':156}
SUM = 0
for i in DICT.keys():
    if '1984' in i:
        SUM += DICT[i]