wiki:Python

Python情報

Pythonを学ぶ人に

コードフラグメント

コピペして使えるようなコードフラグメントは、ここにまとめます。結構量が多いです。

自社で書いたコード

その他

Pythonアプリケーションの開発のための便利な道具

 Django
ウェブアプリケーションを構築するためのフレームワークです。当社の ミエルリンクという製品の プレゼントキャンペーンサイトは、このDjangoを使って開発しました。シンプルで強力なO/Rマッパー(オブジェクト・リレーショナル・マッパー)、比較的軽くて汎用性の高いテンプレートエンジンが付属しています。これらの部品は、ウェブとは関係なく独立して使用することもできます。アクセスされたURLとPython関数とを、テーブルで対応づけます。テーブルでは正規表現も使えるので、URLの自由度が高く、過去のURLを維持できるのがいいですね。全般に、緩いルールで構成されていて、やり方を強制されないのが嬉しいです。
 TLS Lite
自前でソケットを作って、その通信内容を暗号化したいとき、たいていはOpenSSLのライブラリを使ってTLSを実装するでしょうね。ところが、ライブラリを使ってさえ、これはなかなか大変な仕事。ちょっとげんなりしてしまう。そこでこのTLS Liteの登場。どうしてこんなに簡単でいいのだろうと悩んでしまうくらい簡単。APIの美しさには脱帽です。バージョン0.3.8だなんて謙虚なところも素敵。
 py2exe
Pythonで記述したソフトウェアをWindows用のEXEファイルに変換するツール。 EXEファイルになってしまえば、Pythonの実行環境は不要です。 Pythonで何か作って配布するのに便利。
 Twisted
ソケットを駆使したソフトウェアを開発するためのフレームワーク。 全般に、コールバック関数を書いて「登録」して、最後にメインループを起動するという使い方。 「あとでこれをやってね」なんていうAPIもある。 どうやら便利そうなのだが、当社では不評。 なぜなら、ひとたび採用すると、ソフトウェア全体をTwisted流儀にしなきゃいけない。 バグと全然違う場所で例外が発生すること多数。 コールバックのスパゲッティの中を泳ぐのに疲れました。 慣れると便利なのかもしれません。大規模開発では必要なのかもしれません。
 wxPython
PythonでGUIベースのソフトウェアを開発するためのツールキット。 Windows、MacOSX、Linuxのクロスプラットフォーム。 ありとあらゆるウィンドウ部品を網羅したデモプログラムが付属してきます。 デモプログラムの画面上でPythonプログラムを編集できて、その内容がすぐに反映されるのが興味深いです。
 pychecker
文法チェックしてくれます。Pythonって、単純な文法間違いならファイルを起動したときやimportしたときにエラーがわかるけれど、それ以上のミスは実行してみないとわからない。pycheckerを使うと、もうちょっと詳しくチェックしてくれます。未使用変数もわかります。でも、結局は実行してみないとわからないのですが。