Python

JavaFX用Pygmentsを公開しました

PygmentsはTracで使われているコードハイライトモジュールですが、当然のごとくJavaFX Scriptは対応していません。そこで、プラグインとして作るのは簡単なようなので、作ってみました。 PythonのWikiであるMoinMoinでもこんな感じでハイライト

Pythonの開発環境をvimに整える

vimでPythonの開発環境を作ってみました。 自動インデント コード補完 スクリプトの実行

django-admin.pyとmanage.pyのコマンド補完

bash限定のようですが、コマンド補完をいれておくと便利です。 スクリプトは配布パッケージに含まれているのですが、esay_installすると含まれていないため直接ダウンロードします。 $ cd ~ $ wget http://code.djangoproject.com/browser/django/tags/relea…

CentOS5.3にPython2.6でDjango1.1の開発環境を作成する

CentOSではPythonが2.4と少々古いが、システムでPythonに依存している箇所が多くデフォルトのPythonを置き換えるのは好ましくない。 そこで/opt/python2.6にソースからインストールし、Djangoで開発が出来る所までの手順メモ。 設定とゴール CentOS 5.3を使…

Macbook (OS X 10.5)にMySQL + Pythonの環境を構築する

Django用に環境を作ろうと思ったら、すごくハマったのでメモ。 方針としてはなるべく簡単にインストーラが使えればベストな方向で構築。

第3回Python札幌勉強会に参加

午前中に仕事でドタバタしていたのですが、なんとか参加できた感じです。 Pythonって日本では(特に開発系の人)それほどメジャーな言語ではありませんけど、今回も10名以上が参加です。この辺は告知の仕方が上手いのかな?内容としてはPythonチュートリアル…

Python札幌題2回勉強会

OSCの翌日ですが、id:nullpobugことtokibito氏が札幌にいるわけで、Python札幌の勉強会が開催されました。内容としては「Pythonチュートリアル」の読書会とtokibito氏によるDjangoのセッションです(あとJythonの紹介が少々)。 内容としては前日のOSCのセッ…

PythonでTDD入門(4) - インスタンス変数のプライベート化

これまでのサイクルでDollarをバリューオブジェクトとして扱うようになりました。また、Dollarオブジェクトの同値関係が定義され、最初のテストも奇麗に書き換える事ができます。 def test_multiplication(self): five = Dollar(5) product = five.times(2) …

PythonでTDD入門(3) - バリューオブジェクトと等価性

前回はオブジェクトに副作用があるという設計上の問題を解決する為に、timesメソッドの戻り値をDollarに修正しました。この変更はバリューオブジェクトパターンを適用したと考える事ができます。バリューオブジェクトとはその名前が表すようにオブジェクトが…

PythonでTDD(2) オブジェクトの副作用

前回の実装ではDollarオブジェクトの値が変化する、すなわちオブジェクトに副作用の問題があります。Dollarオブジェクトの性質としては、$5は$5で変化しないことが望ましい為、timesメソッドで自身の状態を変化させずに新たらしいDollarを返すようにしましょ…

1.1 複数通貨のMoneyオブジェクト

翻訳がアレと評価されているテスト駆動開発入門をPythonで写経してみようと思います。あわせてPythonを学習していきましょう。まずは最初の目標である「$5 * 2 = 10」となるテストケースを作成します。最初にテストケースを作成しますが、パッケージは「tdd…

Java開発者の読むDjangoの設計思想

Djangoのサイトには「Djangoの設計思想」というドキュメントがあります。どんなフレームワークでもそうですが、設計思想を理解し、その流れをつかむ事で正しい利用への最短ルートです。もし、自分の思想にあわないならば問題です。可能であれば、そのフレー…

Templateクラス

Pythonには便利な文字列置換クラスが用意されています(2.4以上)。 置換のためのマッピングとしてマップを使用しますが、locals()を使用すればかなり簡潔に書くことができます。 passwd = 'admin123' from string import Template print Template('passwd=$…

required of BooleanField

30分くらいはまってしまったよ・・・。 formsでBooleanFieldを指定し、チェックボックスを配置してみると、「この項目は必須だぜ」とValidationでエラーとなる。なぜ? 暫くの間、色々と試した挙句、ドキュメントを参照。 BooleanField class BooleanField(*…

JSONのデータを作成する

イデオムレベルのコードだけど、Python初心者のメモです。 from django.utils import simplejson data = simplejson.dumps( [dict(id=entity.id, name=entity.name, description=entity.description) for entity in Entity.objects.filter(revision=0)] , en…

nbpython

最近、Djangoを始めたのでnbpythonを試してみた。 https://nbpython.dev.java.net/