パッケージインポート
Python のパッケージインポートについてメモ。
パッケージインポートとは?
ディレクトリパスを指定してインポートを行う機能のこと。
モジュールサーチパスに指定するディレクトリが減らせたりできる。
__init__.py
インポート対象ディレクトリに必要なファイル。
初回インポート時にロードされる。
インポートしてみる1
まずテスト用のディレクトリとファイルを作成する。
構成は以下のようにする。
a.py
mod/b.py
mod/__init__.py
インポートしてみる2
mod ディレクトリを作成し、中に b.py ファイルを作成。
$ mkdir mod
$ vi mod/b.py
#!/usr/bin/env python
# -*- coding: utf8 -*-
# b.py
def show_test():
print "in b.show_test()"
print "in b.py"
続けて init.py を作成。
$ vi mod/__init__.py
#!/usr/bin/env python
# -*- coding: utf8 -*-
# __init__.py
print "in __init__.py"
a.py ファイルを作成。
$ vi a.py
#!/usr/bin/env python
# -*- coding: utf8 -*-
# a.py
import mod.b as b
if __name__ == "__main__":
b.show_test()
実行してみる
$ chmod +x a.py
$ ./a.py
in __init__.py
in b.py
in b.show_test()
雑感
知らなくても支障はないけど、知ってると便利。