Python: ビットボード(またはビットセット)の実装
bitarray パッケージを利用すればよい。
Windows環境におけるセットアップ手順は以下のとおり。
1. setuptools のインストール
以下のURLからexeファイルをダウンロードし実行。(たとえば、setuptools-0.6c11.win32-py2.7.exe)
http://pypi.python.org/pypi/setuptools
2. bitarray パッケージのインストール
以下のURLからeggファイルをダウンロード。(たとえば、bitarray-0.3.5-py2.7-win32.egg)
http://pypi.python.org/pypi/bitarray/
・コマンドプロンプトから、「easy_install eggファイル名」を実行するだけ (easy_install URLでも可とのこと)
1: >easy_install bitarray-0.3.5-py2.7-win32.egg
2: Processing bitarray-0.3.5-py2.7-win32.egg 3: creating e:\python\python27\lib\site-packages\bitarray-0.3.5-py2.7-win32.egg 4: Extracting bitarray-0.3.5-py2.7-win32.egg to e:\python\python27\lib\site-packages 5: Adding bitarray 0.3.5 to easy-install.pth file 6: 7: Installed e:\python\python27\lib\site-packages\bitarray-0.3.5-py2.7-win32.egg 8: Processing dependencies for bitarray==0.3.5 9: Finished processing dependencies for bitarray==0.3.5 10: 11: >
3. bitarray のテスト
・ユニットテスト
>>> import bitarray >>> bitarray.test() bitarray is installed in: E:\Python\Python27\lib\site-packages\bitarray-0.3.5-py2.7-win32.egg\bitarray bitarray version: 0.3.5 2.7.1 (r271:86832, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit (Intel)] ........................................................................................... ---------------------------------------------------------------------- Ran 91 tests in 3.016s OK <unittest.runner.TextTestResult run=91 errors=0 failures=0> >>>
・簡単なテスト(論理和、論理積)
>>> from bitarray import bitarray
>>> a = bitarray(10)
>>> a.setall(False)
>>> b = bitarray(10)
>>> b.setall(True)
>>> a
bitarray('0000000000')
>>> b
bitarray('1111111111')
>>> a[1] = True
>>> b[2] = False
>>> a
bitarray('0100000000')
>>> b
bitarray('1101111111')
>>> a & b
bitarray('0100000000')
>>> a | b
bitarray('1101111111')
>>>
参考:
http://d.hatena.ne.jp/SumiTomohiko/20070609/1181406701
http://peak.telecommunity.com/DevCenter/setuptools
0 件のコメント:
コメントを投稿