次のディレクトリ構造に2.6pythonスクリプトとライブラリがあります。
+ bin
\- foo.py
+ lib
\+ foo
\- bar.py
bin/foo.py内のクラスをインスタンス化するためにユーザーに実行してもらいたいlib/foo.py。これを実現するために、私のbin/foo.pyスクリプトには次のコードがあります。
from __future__ import absolute_import
import foo
klass = foo.bar.Klass()
ただし、これにより次のようになります。
AttributeError: 'module' object has no attribute 'bar'
つまり、それfoo自体がライブラリではなく、期待どおりに機能するようにfoo名前を変更すると考えています。bin/foo.pybin/foo-script.py
bin/foo.pyスクリプトを保持してインポートする方法はありlib/foo.pyますか?