銀月の符号

Python 使い見習いの日記・雑記

2010-01-01から1年間の記事一覧

SQLAlchemy で Firebird その3

その0 準備 その1 テーブル定義関連 その2 接続関連 その3 クエリー関連(ORM 版)(いまここ) クエリー関連(ORM 版) 詳しくは Object Relational Tutorial に載っている。とりあえず DB 設定、テーブル設計、セッションの作成を。 from sqlalchemy impor…

SQLAlchemy で Firebird その2

その0 準備 その1 テーブル定義関連 その2 接続関連(いまここ) その3 クエリー関連(ORM 版) DB 接続まわり。 Engine Firebird を使用するには create_engine にて firebird+kinterbasdb を指定する。次のようになる。 engine = create_engine('firebird+…

SQLAlchemy で Firebird その1

その0 準備 その1 テーブル定義関連(いまここ) その2 接続関連 その3 クエリー関連(ORM 版) テーブル定義関連。まずは Object Relational Tutorial 。そのあとに読むべきは Mapper Configuration 、 Describing Databases with MetaData 、 Column and D…

SQLAlchemy で Firebird その0

その0 準備(いまここ) その1 テーブル定義関連 その2 接続関連 その3 クエリー関連(ORM 版) まる 1 日かかって Python, SQLAlchemy 経由で Firebird データベースが扱えるようになったけれど、なにを行ってきたのか忘れそうなので覚書を残す。記録をとっ…

Python レシピ更新 ハッシュの要素を挿入した順に取り出す

『118:ハッシュの要素を挿入した順に取り出す』を 「PEP 372 で順序つき辞書提案中」という内容から、「標準モジュール collections に OrderedDict があるよ」という内容に更新! collections.OrderedDict 、その実装 collections.OrderedDict の実装は「順…

Windows Python 2.7 でも MeCab 0.98

先週土曜 2010/8/7 に Windows で MeCab 0.98 の Python 2.7 バインディングをビルドしました。方法はやっぱり以前と変わりなしです。 ダウンロード 前々回 形態素解析エンジン MeCab 0.97 とその Python バインディングを MinGW でビルドする - 銀月の符号 …

日記かいてない

Python 2.7 がリリースされたりと世の中は進み続けているのに、オレの日記は1月以上止まっていたようだ。はてダの入力インターフェースも気がついたら新しくなっていたし。さて、なに書こうかな? 今週金曜夜から無事生還できたら、 Python 2.7 で遊ぶんだ……

絵文字にマッチする正規表現 Unicode 版

携帯電話の絵文字に触れる機会があったので、絵文字にマッチする正規表現を。絵文字は Unicode の外字領域にある。なので絵文字以外の外字が使われていないという前提があるならば、こうしてしまえばよい。 import re private_use = re.compile(ur'[\uE000-\…

100,000 ヒット

今日は引っ越してから11日目。だいぶ落ち着いてきたので1月ぶりに自分のはてダを…と思ったら。アクセスカウンタが 100623 を表示。とうとう 6 桁に到達。 2 年と 2 ヶ月かぁ。このブログを始めたころは、いろいろとあせってたなぁ。なにも経歴が無い、と。な…

MessagePack メモ

http://msgpack.sourceforge.net/ Python help(msgpack) するとファイルライクオブジェクトに対して入出力する pack, unpack と、 Python 文字列を対象とする packb (= packs), unpackb (= unpacks) の説明あり。 import sys import msgpack msgpack.pack([1…

setup.py install --home=~

python setup.py install --home=~と export PYTHONPATH=~/lib/pythonの合わせ技を思い出した。今度は忘れないようにメモ。テスト中の Python ライブラリを Python システム外に仮置きする簡単な方法のひとつ。 --home=~ と 8 文字タイプするだけでホームデ…

スミス数(すみすすう)

すみすさんの すみす.jp ドメイン取得祝いに、スミス数ライブラリを Python で書いたよ。*1 smithnumber.py version 1.1 (2010/3/24) smithnumber.py version 1.0.3 (2010/3/23) smithnumber.py version 1.0.2 (2010/3/23) smithnumber.py version 1.0.1 (20…

素因数分解

割り切れるかどうか試してみる、という力業の方法で。http://tsumuji.cocolog-nifty.com/tsumuji/2009/05/post-af3f.html を参考に作成。素因数分解は素数で割ってみることでできる。しかし、素数を求めることそのものに時間がかかるため単に 2 と 3 以上の…

素数列の生成3

素数列の生成2 - 銀月の符号 を微修正。3 以上の奇数の生成方法を itertools.islice(itertools.count(3), 0, None, 2) に変更。うちの実行環境 CPython 2.6.4 on Win32 ではこちらのほうが早かった。 CPython 全般でこちらのほうが早いと予想しているが Jyth…

N 個の組

L[0:2], L[1:3], L[2:4] …のような値を返すイテレータについてのメモ。ほぼ itertools ライブラリドキュメントのレシピ のまま。 L[0:2], L[1:3], L[2:4] … のようなイテレータ レシピにそのものが載っていたので転載。 from itertools import * def pairwis…

gettext モジュールメモ

Python gettext モジュールと戯れる。多言語対応 Python アプリを作るためのモジュール。しかし、オレには日本語以外まともに使える語がない罠。いや、日本語も怪しいけれど。 前提 次のコードを hello.py とする。実行すると「Hello」と挨拶するだけのスク…

md5sum の模倣

Python で md5sum 。車輪の再発明遊び、兼 C コードリーディング。参考にしたのは GNU coreutils-8.4.tar.gz の md5sum.c 。先日の「md5 のチェックを Python で - 銀月の符号」なんかと違って、ちゃんと各種オプションもある。 得られたもの optparse モジ…

md5 のチェックを Python で

md5sum なんて入ってないけれども Python (2.5 以上の 2系)ならある、という奇特なパソコンで役に立つかもしれないスクリプト。 md5sum -b spam.txt っぽい動作をする。 -t や -c 相当の動作はない。引数なし時や - 指定時に標準入力から読むという動作もな…

Ubuntu インストール失敗、と騒ぐ前に md5 チェックくらいしようぜ、オレ

Windows の Virtual Box 3.1.4 に Ubuntu 9.10 (Ubuntu Japanese Team の)をインストールしようとしたときのこと。インストーラの質問にいろいろ答えてファイルコピーを待つのみ、となったのだけれども 80% ほど進んだところで、ディスクへのコピー失敗のダ…

自転車パンク

自転車の後輪がさっそくパンクしてしまった。今年はまだ 3 回しか乗ってないのに。おれが重たいのと、路面が滑り止め用砂利だらけなのと、まだ寒くてゴムの伸縮性が、の 3 つの悪条件が重なったせいだろうなぁ、たぶん。

降雪

しんしんと降る雪。せっかく自転車に乗れるようになったのに、また乗れなくなった。最近、寒い日と暖かい日の気温差が大きい。風邪引かないようにしないと。

雪融け

雪降ったり融けたりの繰り返しでなんだかあわただしい。とりあえず、自転車に乗れる程度には路面が出てきたところ。今日からはサイクリングとウォーキングを交互に行うぞー。痩せるぞー。

Python が好きな理由を思い出してみる

Python を好きになったきっかけってなんだったっけ? 好きに理由は要らないと思ってはいるものの、言葉にできないと人に伝えるときにすごく不便だと思ったのでまとめようとしてみる。インデント? ダックタイピング? itertools ? functools ? unittest ? 標…

素数列の生成2

あの話のエピローグには続きがあって「猿をぶら下げる代わりに紐を結ぶようにした、軽いから」というのがあるのだけれども、どういうことなのか昨晩やっとわかった。(なんのことかわかってなかったという自覚があったのだから、隠さずにそう書くべきだった…

好奇心

うまく話せない、自信ない、返答が遅い・でない、などなどの原因について考える機会ができたので。今日の結論は、「普段から深く考えてない」から。突然いい考えが思いつくはずもなく。普段考えていること、およびその組み合わせしかとっさには出ないわけで…

素数列の生成

Python で Project Euler(http://projecteuler.net/ )(日本語訳は http://odz.sakura.ne.jp/projecteuler/)をとき始めた。現在 3 問目。素因数、素数、エラトステネスの篩、と調べていたら、次のたとえ話にたどり着いた。 雲梯を進む怠惰な猿たち 雲梯を…

雪融け中

最低気温がプラス。2月の北海道でこれはめずらしい。

csv モジュールメモ

ひさしぶりに csv モジュールを使ったのだけれど、うろおぼえで十数分無駄にしたので、簡単にメモしてみる。 csv モジュールとは CSV のようなテキストからデータを読み出したり、書き出したりできる便利モジュール。CSV って簡単そうに見えるけど、 'a,b,c'…

「頭痛が痛い」、ほど極端なものでないにしろ、 この手のまちがった文章を書き言葉に誤って入れてしまうことが増えてきた。 …日々、意識することが重要ということか。

カウンタ変数? いやイテレータ

1週間以上ブログ更新しないのはけっこうあることだけど、1週間 Python コード書かなかったのはひさしぶり。ネタはないけれど、無理やり作って書いてみるか。昔の自分に今の自分が Python 教えるならば…といった設定にしてみる。 ジェネレータとか enumerate…