私は.py
のファイルを含むディレクトリを持っています。各ファイルはいくつかのクラスを定義します。私はまた、ディレクトリに空の__init__.py
を持っています。例えばモジュールには属性がありません
:
myproject
__init__.py
mymodule
__init__.py
api.py
models.py
views.py
私はmymodule
をインポートし、すべてのこれらのファイルで定義されたクラスにアクセスしようとしています:
from myproject import mymodule
print mymodule.api.MyClass
それはmymodule
は何の属性api
を持っていないことを言って、私にエラーを与えます。どうして?そして、なぜ私はファイル(models.py
)のうちの1つにしかアクセスできず、他のものにアクセスできないのですか?
In [2]: dir(banners)
Out[2]:
['__builtins__',
'__doc__',
'__file__',
'__name__',
'__package__',
'__path__',
'models']
私はそれを行うことができます。点線の名前を使用することは可能ですか? – akonsu
@akonsuの場合は、単に 'import myproject.mymodule.api'を実行して、' myproject.mymodule.api.MyClass'を通してそれにアクセスしてください。 –
まあ、これは一般的に言えば、私のコードをどのように動かすことができるのかということではないと思います。私はこれが達成できるかどうか不思議です。私はそれが主要な 'myproject'なしで 'mymodule.api ...'を通して私のクラスにアクセスできるようにすることはできますか? – akonsu