在 Python 中,我可以创建一个哈希,其中每个元素在第一次被引用时都有一个默认值(也称为“autovivification”)。这是一个例子:
from collections import defaultdict
d = defaultdict(int)
d["new_key"] += 1
print d
打印 dict 显示“new_key”的值为 1。
Ruby 中的等价物是什么?此代码引发错误:
d = {}
d[:new_key] += 1
puts d
test.rb:3:in `<main>': undefined method `+' for nil:NilClass (NoMethodError)