「Python プログラミングパーフェクトマスター」という本を購入して、記載のプログラムを動かしている。辞書のところを、MySqlのデータベースに変換、プログラムを一部改定しながら動かし続け、形態素解析のところまできた。実に面白い本だ。結構たくさんのプログラミング関係の本を買ってきたが、こんなにドキドキする本には滅多に会わない。最後まで、きちんと追っていきたい。
ただ、だからと言ってこの本を勧めているわけではない。プログラミング本の場合、読者が求めているものと一致するかどうかが問題であって、合わないと、やたら問題だけが目につくというパターンがあるからだ。本を買う行為は常に自己責任だ。不安な本は買わなけれりゃいいし、買ってから本に八つ当たりするのは馬鹿げている。
次のような変更を加える。
(1)当面、感情の要素には興味ないので、全て削除する。感情はもっと違う入れ方があると思っている。
(2)dictionaryのpatternオブジェクトを、
self.pattern = {}
for row in c.fetchall():
if row[1] != '' and row[2] != '':
self.pattern.setdefault('pattern', []).append(row[1])
self.pattern.setdefault('phrases', []).append(row[2])
のような入れ方から
self.pattern = []
for row in c.fetchall():
if row[1] != '' and row[2] != '':
self.pattern.append({'pattern':row[1],'phrases':row[2]})
に変更する。
つまり、パターントフレーズのセットを辞書オブジェクトにして、pattern配列に次々に入れておくようにした。
これ以前は、patternは、それを入れた配列と、phraseを入れた配列を辞書オブジェクトにしていた。
いわば、縦にしていたものを横にしたという感じた。
(3)それにともなって、ParseItem系のクラスが全く必要なくなる。