Python, fabric, buildout | 10:03わたしはインフラとかOSのインストールがとても苦手で、仕事で新しい案件にアサインされる度に仮想環境を作って諸々インストールするのが面倒で嫌いです。例えばnginxのインストール・セットアップをしようと思ったとき、やり方をぐぐって手順書としてメモします。しかし、手順書を見ながらコマンドをコピペすること自体やめてしまいたいと思う事が多いです。環境構築手順をレシピとして作っておくnginxのインストールならば nginx_install.sh 、セットアップは nginx_setup.sh みたいに、環境構築手順をシェルに書いておいて使い回し可能にできたら楽なんじゃないかと思います。こういうものをレシピを呼ぶらしいです。Pythonで開発するのだから、レシピもPythonで書ければ楽でしょう。具体的なイメージとしては、レシピを書いた
今の会社に入ってからPostgreSQLを使い始めました。というわけで、初心者ですがPostgreSQL アドベントカレンダー 2011に参加してみます。 さて、PostgreSQL 9.1からSQL/MED規格の一部である 外部データラッパ (FDW:Foreign Data Wrapper) がサポートされました。すでに PostgreSQL アドベントカレンダー 12月3日分にて、板垣さんが WebAPIをfdwから叩いてます。この記事では www_fdw という既存のfdwを利用する方法でしたが、今回は実際に自分でfdwを作ってみます。 fdwはAPIを6個程度書くだけで良いのでそれだけでもかなり書きやすいのですが、いかんせんCで書く必要があります。そこで、 multicorn を使ってpythonでfdwを書いてみました。 なにを題材に書こうかなと思ったのですが、Pure Pyt
Posted by Daniele Varrazzo on 2010-12-01 Tagged as recipe, async, eventlet, notify PostgreSQL supports asynchronous notifications, a simple messaging system allowing clients to be notified about events occurred in the database. Notifications can be sent by any session using a "NOTIFY channel" command and will be received by any session which has subscribed with a LISTEN channel to receive updates.
PEP 374 – Choosing a distributed VCS for the Python project Author: Brett Cannon <brett at python.org>, Stephen J. Turnbull <stephen at xemacs.org>, Alexandre Vassalotti <alexandre at peadrop.com>, Barry Warsaw <barry at python.org>, Dirkjan Ochtman <dirkjan at ochtman.nl> Status: Final Type: Process Created: 07-Nov-2008 Post-History: 07-Nov-2008, 22-Jan-2009 Table of Contents Rationale Terminolog
今日は何度も「なぜPythonの整数の割り算はC言語のようにゼロに向けて丸めるのではなく、切り捨てなのか?」と聞かれた。 数値が両方とも正の場合には、何も驚くようなことは発生しない。 >>> 5//2 2 しかし、どちらかの数値が負の場合、結果は切り捨てられる。言い換えると、ゼロから遠い方向(負の無限大方向)に向けて丸められる。 >>> -5//2 -3 >>> 5//-2 -3 この挙動は何人かの人を混乱させたようであるが、このような実装になっているのは数学的な根拠がある。整数の割り算の演算子(//)と、その弟の余りを計算する演算子(%)は、次のような数学的な関係を保っている。すべての変数は整数とする。 a/b = q あまり r これは、次のような関係性を持っている。 b * q + r = a かつ 0 <= r < b (ただし、a, bはともに0以上の整数) もしも、この式の関係
こんにちわ、Python界の便所虫ことmopemopeです。 前から書こうとしていた話を書いておきます。 最近、eventlet、geventが市民権を得てきましたね。 特にgunicorn経由で使用しはじめてる人も多いんじゃないかなと思います。 まあこれらは NonBlocking IO + 協調スレッドなわけなんですが、全部をうまく 非同期で処理できるわけではありません。 サードパーティのライブラリがC拡張であると割り込めないのでどうしようもないのです。 サードパーティのライブラリで一番使っているのはそうです、DBドライバです。 肝心のDBドライバがブロックしちゃうともったいないわけです。 これって問題だなーと思ったpsycopg2の人たちは拡張できる仕組みを入れました。 (2.2以降) eventletを例に見てみましょう。 psyco_eventlet.py import psyc
phpshはPython製のオープンソース・ソフトウェア。PHPはWebシステム開発で手軽に使えて、小さな規模から大規模までこなせるプログラミング言語だ。時々槍玉にあがることはあるが、使い手次第といった所だろう。なにせ今やYahoo! Inc.すらも追い越そうという勢いのFacebookでも使われているのだ。 Pythonで実装されているのがミソ そんなFacebookではオープンソース・ソフトウェアを多数リリースしており、Apache Software Foundationのゴールドスポンサーにもなっている。そして新しくリリースされたソフトウェアがphpshだ。PHPではあるがソフトウェア自体はPythonで作られている。 phpshはPHP用のシェル環境だ。標準でもインタラクティブモードがあるが、それのFacebook版だ。予め--with-readlineのようなオプションを付けずに
1章: 始めよう¶ Pythonのインストール Pythonの実装系 Jython IronPython PyPy その他の実装 Linux へのインストール パッケージインストール ソースコンパイル Windows へのインストール Python のインストール MinGW のインストール MSYS のインストール Mac OS X へのインストール パッケージインストール ソースコンパイル Python プロンプト インタラクティブプロンプトのカスタマイズ iPython: より良いプロンプト setuptools のインストール 動作原理を理解する EasyInstallを使ったsetuptoolsのインストール distutilsにMinGWのフックを入れる 作業環境 エディターと補助ツールを使う コードエディター Vimのインストールと設定 その他のエディタを使う その他のバイナ
Updated May 2006 | Posted August 2004 | Fredrik Lundh The stringlib library is an experimental collection of alternative string operations for Python. The fast search algorithm described below was added to Python 2.5 during the Need For Speed sprint in Reykjavik. It’s currently used by the 8-bit string and Unicode implementations. Other components and concepts may appear in future Python releases.
reStructuredTextからPDFファイルを生成するツールにrst2pdfというものがありますが、インストールとか設定でたまにはまる。もっと手軽にPDF作りたいなーってことでAppEngineに乗っけてみました。 URL http://www.rst2pdf.net/ https://rst2pdf-net.appspot.com/ HTTPSで使いたい場合はappspot.comのドメインのほうを使って下さい。 何ができるの reSTのテキストを投稿する(アップロードする)とPDFファイルを作成できます HTTPSで利用するとダウンロードページにパスワードを設定することができます 通常のrst2pdfと同じような使い方のコマンドツールがあります 注意点 テキストのみのreSTにしか対応していない どうやって使うの まずは http://www.rst2pdf.net/ にアクセス
The pg/python Project Home Pagepg/python is an open source project working toward the improvement of Pythoninterfaces to PostgreSQL. Driver Overview To install the driver, you should probably just use setuptools' easy_install: $ easy_install pg_proboscis. If that is not an option, you can download the source packages in the Download Index(You'll need one of each. :). A unified package may come e
pyPgSQL vs psycopg2 第一回 pyPgSQLとpsycopg2の処理速度の比較をしてみる。 今回は、それぞれのモジュールを使ってSELECT分を発行し、 データ取得できるまでの時間を測定してみた。 テスト用にデータベースを作成(以下)した。 -- postgres : 8.1.4 database : testDb table : testTable -- testTableのスキーマは以下のとおり。 -- char(1) × 6, integer × 4 -- このtestTableに、60万行のデータを登録した。 (testTableのデータをpg_dumpでダンプしたら、 20MBのファイルが作成された。) その後、以下のコマンドで、sqlを実行し、その処理時間を計測した。 > python >>> # psycopg2 >>> import time >>> pr
2点ほど補足。 Pythonのstr/bytes/unicodeはimmutableで、実装効率の上でmutableなbytesが必要になった場合はbytesarrayを使用します。 reprはなんらかobjectを、そのobjectを生成させるcode片を印刷させたいときに使う関数です。この表ではそれぞれのversionのpythonで該当のobjectに対してreprを呼んだときの出力のformatです。2.xでは''がPyStringであったが、3.0では''はPyUnicodeを印刷するために使われています。 codecを拡張して「俺様プチencoding」 記事の終わりに今回実装するencodingのソースコードへのリンクを用意してあります。ここではお昼ごはんを食べながらでも読めるように「sourceにinline」な形式で実装を見ていきます。 import codecs 普段、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く