2024-04-24 22:04:32 发布
网友
给定一个字典,我如何才能确定该字典中的给定键是否已设置为非None值?
也就是说,我想这样做:
my_dict = {} if (my_dict[key] != None): my_dict[key] = 1 else: my_dict[key] += 1
也就是说,如果已经有一个值,我想增加这个值,否则设置为1。
我个人喜欢使用setdefault()
setdefault()
my_dict = {} my_dict.setdefault(some_key, 0) my_dict[some_key] += 1
我更喜欢用一行代码。
my_dict = {} my_dict[some_key] = my_dict.get(some_key, 0) + 1
字典有一个函数get,它接受两个参数-所需的键,如果不存在则为默认值。我更喜欢这个方法而不是defaultdict,因为您只想处理在这一行代码中不存在密钥的情况,而不是在任何地方。
您正在寻找^{}(可用于Python 2.5+)。这个
from collections import defaultdict my_dict = defaultdict(int) my_dict[key] += 1
会做你想做的。
对于普通的Pythondicts,如果给定的键没有值,那么当访问dict时,您将notgetNone——aKeyError将被引发。因此,如果您想使用常规的dict,而不是使用您的代码
dict
None
KeyError
if key in my_dict: my_dict[key] += 1 else: my_dict[key] = 1
我个人喜欢使用
setdefault()
我更喜欢用一行代码。
字典有一个函数get,它接受两个参数-所需的键,如果不存在则为默认值。我更喜欢这个方法而不是defaultdict,因为您只想处理在这一行代码中不存在密钥的情况,而不是在任何地方。
您正在寻找^{} (可用于Python 2.5+)。这个
会做你想做的。
对于普通的Python
dict
s,如果给定的键没有值,那么当访问dict时,您将notgetNone
——aKeyError
将被引发。因此,如果您想使用常规的dict
,而不是使用您的代码相关问题 更多 >
编程相关推荐