Pythonでモジュールの自作
自作のモジュールをつくるつくったモジュールをパッケージ化したい
インストールしたpythonモジュールを削除したい
とりあえず適当なコード
foo.py サンプルコード
### comment def say(): print("foooo!!!") if __name__ == '__main__': say()
setup.py サンプルコード
from distutils.core import setup setup( name = 'foo', version = '0.0.1', py_modules = ['foo'], )
パッケージ化する
$ python setup.py sdist $ tree . ├── MANIFEST ├── __init__.py ├── dist │ └── foo-0.0.1.tar.gz ├── foo.py └── setup.pydistディレクトリの下にfoo-0.0.1.tar.gzができた
モジュールのインストール
アーカイブを解凍してそのディレクトリの中で
パッケージをインストール
$ cd dist $ tar zxvf foo-0.0.1.tar.gz $ cd foo-0.0.1 $ sudo python3.3 setup.py install
インストール先を指定しないので、
%PYTHON_HOME%\Libs\site-packages\
にインストールされることになる
パッケージの情報
$ cat dist/foo-0.0.1/PKG-INFO Metadata-Version: 1.0 Name: foo Version: 0.0.1 Summary: UNKNOWN Home-page: UNKNOWN Author: UNKNOWN Author-email: UNKNOWN License: UNKNOWN Description: UNKNOWN Platform: UNKNOWN
インストールしたモジュールをつかってみる
test_foo.py サンプルコードimport foo foo.say()
test_foo.py を使う
$ python3.3 test_foo.py
インストール したモジュールの削除
インストールされたファイルの一覧を得る
sudo python setup.py install --record install_files.txt
$ cat /usr/local/lib/python3.3/dist-packages/foo.py /usr/local/lib/python3.3/dist-packages/__pycache__/foo.cpython-33.pyc /usr/local/lib/python3.3/dist-packages/foo-0.0.1.egg-info
install_files.txtにリストアップされたファイルを全部消す
$ cat install_files.txt | sudo xargs rm -rvf
参考
2. setup スクリプトを書く — Python 3.3 documentation
http://docs.python.jp/3.3/distutils/setupscript.html
setuptools QuickStart - 清水川Web
http://www.freia.jp/taka/docs/pyhack4/setuptools/quickstart.html
programming/python/モジュールの配布 - PukiWiki
http://www.logos.ic.i.u-tokyo.ac.jp/~s1s5/pukiwiki/index.php?programming%2Fpython%2F%A5%E2%A5%B8%A5%E5%A1%BC%A5%EB%A4%CE%C7%DB%C9%DB
馬の脳: python setup.py installしたモジュールのアンインストール
http://horse-brain.blogspot.jp/2012/04/python-setuppy-install.html
0 件のコメント:
コメントを投稿