2

Pythonのfromimportステートメントに少し混乱しています。特に、パッケージ内にあるモジュールからクラスをインポートする方法。たとえば、2つのモジュール(モジュール1とモジュール2)を持つパッケージという名前のパッケージがある場合、モジュール2内のモジュール1から特定のクラスをインポートするにはどうすればよいですか?

私が現在見つけているのは、(モジュール2内で)次のことを行う必要があるということです...

from package import module1
module1.class1()

これは機能しますが、あまり読みにくいため、モジュール2から直接class1()にアクセスできるようにしたいと思います。ただし、次の構文は機能しません...

from package import module1.class1

また、それは私を単に行かせません...

from module1 import class1

パッケージ内のモジュール内にあるクラスを、そのパッケージ内の別のモジュール内に直接インポートするにはどうすればよいですか?

4

1 に答える 1

7

あなたは正しい方向に進んでいました:

from package.module1 import class1

同じパッケージ内からインポートしていると言う場合は、次のこともできます。

from .module1 import class1

.インポートを行うモジュールのパッケージ階層内の位置」を意味します。詳細については、ドキュメントを参照してください。

于 2012-11-25T00:24:06.930 に答える