ラベル Python の投稿を表示しています。 すべての投稿を表示
ラベル Python の投稿を表示しています。 すべての投稿を表示

2011年9月6日火曜日

Google App Engineの Pythonのバージョンが 2.7になるらしい

App Engine の料金体系変更に関する FAQ - Google Japan Developer Relations Blog
Q: Python 2.7 を使用するために、コードにどんな変更を加える必要がありますか?
A: 基本的には、現在の Python 2.5 用のコードはそのまま Python 2.7 でも動作しますが、いくつか大事な変更をする必要があるかもしれません:
- Django 1.2 を使用してください: 現在の Python ランタイムはデフォルトで Django 0.96 を使用します(実は webapp 組み込みの template システムを使用すると Django を使うことになります)。Python 2.7 は新しいランタイムなので、この古いバージョンをパッケージ、サポートする予定はありません。Django 1.2 以降のバージョンをサポートする予定です。これに備えるためには、コードが Django 1.2 で動作することを確認しておくのが一番良い方法です。Django 1.2 を使用する方法については、こちらに解説があります。
- Python 2.7 サポート: 言うまでもないことかも知れませんが言っておきますと、新しいランタイムで使用するためには、コードが Python 2.7 で動作する必要があります。

Q: Python 2.7 では並列リクエストはどのように動作しますか?
A: 現在の Java ランタイムがスレッドにより並列リクエストをサポートしているのと同様に、並列リクエストはスレッドを使用します。
- WSGI 準拠のフレームワークを使用してください: 並列リクエストの恩恵を受けるためには、CGI インターフェースではなく、その替りに WSGI 準拠のフレームワーク(これは App Engine に同梱している webapp フレームワークも含まれます)を使用する必要があります。
- スレッドセーフ: Python 2.7 ではスレッドを使用して並列リクエストをサポートしているので、この恩恵を受けるためにはコードがスレッドセーフである必要があります。
- もちろん前の質問で述べてある Python 2.7 対応も必要です。

Djangoは1.2へ。
並列リクエストを受け付けられるようになるので、新しい課金体系での料金を抑えられるようだ。

2011年8月30日火曜日

Pythonで 短縮URLを元に戻す方法

短縮URLを1行で展開する@Python : Shibuya Blog
てな感じになります。urllib2.urlopen()でリソースを開いたのち、geturl()で展開したURLを取得できます。

これは便利そう。Google AppEngineでも使えるか?

2011年3月18日金曜日

urllib.urlencodeで UnicodeEncodeError: 'ascii' codec can't encode characters

urllib.urlencode に unicode を渡すとエラー - Pythonで遊ぶよ - pythonグループ
そういうときは urllib.urlencode を使って

import urllib
print urllib.urlencode(args)

とするみたいなのだが、unicode が混じってると使えない。

おーすばらしー!ありがとー!
.

ブログ アーカイブ

カテゴリー