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 件のコメント:
コメントを投稿