get
dict的方法(例如characters
)与索引dict一样,不同之处在于,如果缺少键,KeyError
则返回默认值(如果不.get
使用键,则返回默认值(如果仅使用一个参数调用,则键为默认值)是None
)。
因此,一个等效的Python函数(调用myget(d, k, v)
就像这样d.get(k, v)
:
def myget(d, k, v=None):
try: return d[k]
except KeyError: return v
您问题中的示例代码显然试图计算每个字符的出现次数:如果它已经具有给定字符的计数,get
则将其返回(因此只将其递增1),否则get
返回0(因此正确地进行递增可得出1
在字符首次出现在字符串中时)。