ミニパターン集 む。この table = {} (table[key] ||= []).push val というコードは 辞書のgetとsetdefault - pyletの日記 のコードによく似てますね。Pythonで書くと table = {} table.setdefault(key, []).append(val) かな。 辞書に存在しないキーを普通に[]で参照するとKeyErrorになります。 >>> d = {} >>> d['foo'] Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'foo'd.get()を使うと、キーが存在しない場合に返却するデフォルト値を指定できます。が、dの中自体は変更しません。 d.setdefault()を使うと、キーが存在しない場合
