>>> c="abcdeabccqq" >>> for i in c: ... val=1+val.setdefault(c,0) ... >>> print val {'a': 34, 'c': 34, 'abcdeabccqq': 33, 'e': 34, 'd': 34, 'q': 34, 'b': 34}
... >>> print val {'a': 34, 'c': 34, 'abcdeabccqq': 33, 'e': 34, 'd': 34, 'q': 34, 'b': 34}
我们一般的操作习惯, 可能有来自于c 代码的习惯在里面. 一般要先判断 hash[key] 在不在 if hash.haskey(key): then xxxxxx 如果利用hash.setdefault(key,xx) 的话, 就在写代码的时候避免了上面的判断, 让代码看起来更整洁一点.
|