2006-10-01から1ヶ月間の記事一覧

関西オープンソース2006&懇親会

11月17,18日(金,土)に開催される「関西オープンソース2006」 Python関連では、PyJUGがプログラム枠(プレゼン)、ブース出展します。詳しくはPyJUG Weblogにて。 懇談会もあるので、近場(東海は近場だよな)の人はどんどん参加すべし。

SoftwareDesign 11月号

第3特集が「快速Python入門」です。 どどーんと、50ページ!! 今まで見た雑誌掲載では一番多いのではないかな 基本から、2.5の新機能、twisted(入門なのだろうか)まで、濃ゆい内容が満載。 kizashiはPythonだったのか。Software Design (ソフトウエア デザ…

unittest, doctest 2種類のテストツール

Pythonには2種類のテストツールがある。 unittestとdoctestだ。 unittestはXPから広まったテストファースト、TDDでお馴染みのxUnitのPython版だ。 TestCaseを作ってTestRunnerでテストを走らせる。doctestは、全く異なる方法でテストを記述する。 モジュー…

[Python][SQLAlchemy] many-to-manyに対するクエリ

単純に以下のように書くとちょっと困るときがある。 people = session.query(Person).select_by(label_person.c.label_id==label_id) people = session.query(Person).select_by(label_id=label_id) # ショートカットここでは、personテーブルとlabelテーブ…

[Python]Pythonでconstメソッドを使う

Python Developers Camp 2006s のライトニングトークでちらっと話したconstメソッド。 constメソッド内では、オブジェクトの状態が変わらないことを保証するということです。 C++くらいしかしらないのだけど、その他の言語にはないのだろうか。 んで、以下の…

many-to-manyマッピング使用時の注意

ひたすら試すのだ。 して、SQLAlchemyのウリのひとつとして、高性能なone-to-manyやmany-to-manyマッピングがあります。 へたなマッピング実装だと、n:mで、n+1回クエリ投げちゃったりして大変なのですが、 とりあえずそのへんは、定義時にlazyオプションで…

2.0だとテーブルエイリアスでAS が使えないのね

わざわざFirebird2.0でSQLAlchemyを試すという茨の道を選択。 Firebird2.0ではテーブルエイリアス指定時に AS キーワードが使えなくなっている。 現行バージョンの2.8.0では、そこが引っかかってJOIN関係のクエリが通らなくなっている。 とりあえずSVNカレン…

クロサギ11

正しいことをしていれば必ず報われるってーのが通用しない世の中なんですねぇー さらに報われる努力が必要で、その努力がなければ正しくても正しくなくても同じってことなのかクロサギ 11 (ヤングサンデーコミックス)作者: 黒丸,夏原武出版社/メーカー: 小学…

[Python][SqlAlchemy] IDとか自動採番

自動採番させたい場合は、default_valueにSequenceオブジェクトを設定する。 person_table = Table("person", metadata, Column("person_id", Integer, Sequence("seq_person_person_id"), primary_key=True), Column("name", String(10))) Postgres, Oracle…

Python Developers Camp 2006 夏 参加してきました。

参加の様子は、VISH+サイトマスター.jp Blogに書いてます。 まあ、これまでMLの参加はしてたものの、こういう集まりには全然顔を出してなかったわけで。 実際参加してみると、各地のみなさまからの熱気、ネタ、さまざまなものから力をいただいたような気がし…