2008-01-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…

DBAPI勉強中(2)

色んなデータ型を試してみます。 import psycopg2 con = psycopg2.connect("dbname=testdb") cur = con.cursor() cur.execute("drop table if exists t") cur.execute(""" create table t( i integer, r real, n numeric, v varchar(10), t text, d date, ti…

DBAPI勉強中

PostgreSQL + psycopg2でデータベースにアクセスちゅう。PEP 249 -- Python Database API Specification v2.0 | Python.orgいわゆるプリペアードステートメントみたいな、SQLとパラメータを別々に渡すために、DBAPIでは何種類かのフォーマットが選べるみたい…