2012-02-17 10 views
0

私はPythonでモジュールを手に入れています。私はコードをより細かく管理するためにそれを小さなファイルに分割したいと思いますが、何も変わっていないかのように思えます。具体的には、クラスC1C2c.pyにあるとします。私はすでにのほとんどを持っている私は、次の2つの方法フォルダをPythonのモジュールに変換する

import c 
c1 = c.C1() 
c2 = c.C2() 

from c import * 


c1 = C1() 
c2 = C2() 

でコードを使用することができるように

c/ 
    __init__.py 
    c1.py <--- class C1 in here 
    c2.py <--- class C2 in here 

、フォルダ構造を作成したいです途中で。次のように私は__init__.pyを定義した場合、

from c1 import * 
from c2 import * 
__all__ == [] 

、私は2つの方法のうちの最初に使用cを行うことができます。どのように私は(好ましく__all__内のすべてのC1C2を列挙せず)は、第2の方法でcを使用することができます

答えて

0

__init__.py__all__文をスキップして、あなたは両方の方法を使用することができます。

+0

これはモジュール 'c1'と' c2'もインポートされることになります。これをどうしたらいいのですか? – duckworthd

+0

これは 'from c import *'に 'C1'と' C2'をインポートさせるので、 'c1 = C1()'のようなコマンドを使うことができます。 –

+0

ああ、私はあなたが意味するものを得る。私は明示的にそれらを '__all__'に入れなければならないと思います。 –

関連する問題