2010-01-01から1年間の記事一覧

VMware Player ゲストにopen-vm-tools を入れてもマウス統合が動かない場合

マウスが仮想マシンのものであるかどうかを判定するためのmdetectコマンドが依存関係でインストールされないのが問題。 sudo apt-get install mdetectして、再起動すれば、マウス統合が動くようになっている。

ビルダーメソッドを作るときはstaticmethodよりもclassmethodを使おう

Javaだとよくビルダーメソッドをstaticで定義するけど、Pythonの場合はできるだけクラスメソッドを使った方が良いだろう。 例えば、float.fromhex http://docs.python.org/library/stdtypes.html#float.fromhex はクラスメソッドなので、 >>> class Foo(floa…

エキスパートPythonプログラミング 予約開始

去年から翻訳していた本が、今月末やっと発売になります。 エキスパートPythonプログラミング作者: Tarek Ziade,稲田直哉,渋川よしき,清水川貴之,森本哲也出版社/メーカー: アスキー・メディアワークス発売日: 2010/05/28メディア: 大型本購入: 31人 クリッ…

unionとintersection

http://blog.livedoor.jp/dankogai/archives/51441112.html一方、Pythonはsetの演算子を定義した。 >>> a = "0 1 2 3 4 5 6 7 8 9".split() >>> b = "0 2 4 6 8 10 12 14 16 18".split() >>> print set(a) & set(b) set(['0', '8', '2', '4', '6']) >>> prin…

DebianでPythonを自分でビルドするときに入れておいた方が良い lib***-dev パッケージ

libbz2-dev libbdb-dev libgdbm-dev libncurses5-dev libreadline5-dev libsqlite3-dev libssl-dev libz-devこれだけあれば、まず使わないようなものをのぞいて、標準ライブラリがビルドできるはず。

Pythonの配列操作

いまさらだけど、 http://0xcc.net/blog/archives/000043.html の Python の部分を添削。 len(a) == 0 は、 if a: のようにリスト自体が空の時に偽になるので使わない。 a.pop(0) は del a[0] とも書ける。どちらでも良いが、多分属性参照が無い分 del の方…

reStructuredText のヘッダを書く

http://blog.tuxcoder.com/2008/12/vim-restructure-text-macros.html を参考に、日本語タイトルに対応する。 vimスクリプトが全く判らないので、Pythonに頼った。 キーマップとか、もっと賢い方法があると思う。 python <

Python Imaging Library (PIL) で、パレット形式のPNGを扱う

PIL のパレットは色々と問題がある。256色あることしか考えてないとか。 んで、PngImagePlugin も、 PNG の "tRNS" チャンクのうちαが0のところを見つけて、そのインデックスを info['transparency'] に突っ込むだけしかしてくれない。PNGのパレット形式はパ…

このブログに乗せているコードは引用を除き CC0 1.0 で提供します。