Pythonでは、最初に参照されたときに各要素がデフォルト値を持つハッシュを作成できます(「自動化」とも呼ばれます)。ここでは例です:Pythonのdefaultdictに相当するRubyは何ですか?
from collections import defaultdict
d = defaultdict(int)
d["new_key"] += 1
print d
辞書の印刷「new_key」の値がRubyで同等の何1.
であることを示していますか?このコードは、エラーがスローされますように注意してください
d = Hash.new 0
d[:new_key] += 1
d[:new_key] #=> 1
d[:foo] #=> 0
- あなたが誤ってデフォルト値を変更する場合があります:
d = {}
d[:new_key] += 1
puts d
test.rb:3:in `<main>': undefined method `+' for nil:NilClass (NoMethodError)
はどのようにして 'デフォルト値とキーの両方を持つハッシュを作成してください:unknown_key'と':next_key'を? – rightfold