2008-04-01から1ヶ月間の記事一覧

ミニパターン

ミニパターン集 む。この table = {} (table[key] ||= []).push val というコードは 辞書のgetとsetdefault - pyletの日記 のコードによく似てますね。Pythonで書くと table = {} table.setdefault(key, []).append(val) かな。

辞書のgetとsetdefault

辞書に存在しないキーを普通に[]で参照するとKeyErrorになります。 >>> d = {} >>> d['foo'] Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'foo'd.get()を使うと、キーが存在しない場合に返却するデフォルト値を指定できます。が、d</module></stdin>…

わかち書かないでマルコフ連鎖

マルコフ連鎖プログラム - pyletの日記 以前作ったマルコフ連鎖プログラムは、実はわかち書きしないで一文字ずつの方が面白いんじゃないかという気がしてきました。 import sys, random MAXGEN = 1000 nonword = "\n" w1 = w2 = nonword statetab = {} while…