So-net無料ブログ作成

Python3 への移植の勧め [Python]

Python 3.3 から、 u"あいうえお" という文字列のリテラル記法が使えるようになる。
これは Python 3.3 では "あいうえお" と同じ意味なので、一見これが追加された意味がわからないけれど、Python2.7 とワンソースで動くようにするためには非常に便利な記法。
ちなみに、Python2.7 では b'あいうえお' と 'あいうえお' が同じ意味。

内部的には、ここユニコード文字列なんだよなー、というところには
us = u"ここはユニコードの文字列"

とかいて、ここはバイナリ列(バイト列)なんだよなー、というところには
bs = b"ここにはバイト列"

と書いておくと、 python2.7 と python3.3 の両方でうまい具合に動く。
文字列以外の部分は、努力と根性で書き直せばよさそう。

Python3 への porting Howto もいろいろあるんだけど、なかなか進捗しないなー

Porting Python 2 Code to Python 3
http://docs.python.org/py3k/howto/pyporting.html

Porting C Modules
http://docs.python.org/py3k/howto/cporting.html
Python/C API Reference Manual
http://docs.python.org/py3k/c-api/index.html
http://docs.python.org/c-api/index.html

ライブラリをPython3対応に書き換える(清水川Web)
http://www.freia.jp/taka/blog/768/index.html

BP Study #54 そろそろ Python3 (@aodag)
http://www.slideshare.net/aodag/bpstudy54-python3

中でも、@aodag さんの BP Study #54 の資料は非常に役に立つ。
ちなみに、 PyCon JP 2012 の3日目のスプリントで @aodag さんが Pyramid の Python3 へのポーティングをやるそうなので、興味ある人は参加してあげてちょ
https://github.com/Pylons/pyramid/wiki/Sprint-Ideas
コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

Facebook コメント

トラックバック 0