2011-07-07 9 views
-3

この問題の範囲内に2つのファイルがあります。file1.pyと​​としましょう。私のPythonコードは混乱していますか?

​​をfile1.pyにインポートしました。

file1.pyでクラスをインスタンス化しています。​​にアクセスしたいと思います。私はオブジェクトを直接(クラス名だけ)参照しようとしましたが、動作しません。どのようにオブジェクトを参照できますか?私はこれを同じファイルに移動したくないので、面倒なことになります。

これを行うための非重大な方法はありますか?そうでない場合、私は欠陥のある設計を実装していますか?

+0

"file1"と "file2"についてのみ話すならば、あなたのデザインにはコメントできません。オブジェクトがどうやって何をするのかなど教えてください。 – Nanne

答えて

0

についての詳細を理解するためにthis linkをthrou読みます。

file2.pyでメソッドを呼び出すときに、クラスを使用する必要がある場合は、単にそのクラスへの参照を渡すことができます。

"Set ...."メソッドを記述し、参照を渡してfile2.pyのクラスのいずれかに格納することができます。

グローバルな静的変数にすることもできますが、これを行うと、より優れたコーディングクラブへの入力が拒否されます。

0

はありません、それは混乱はない、私はちょうど忘れずにオブジェクトを呼び出し、その後、file1.py

import file2 

にファイルをインポートし、あなたがオブジェクトに間違った方法

最初にアクセスしていると思いますスコープ:

file2.object.method 

あなたはobject.methodする直接呼び出しをしたい場合は、インポートが

を変更する必要があります
from file2 import object 

、あなたは

object.method 

を行うことができますあなたがfile.2でのクラスの1つにどこかFile1.py中からクラスを渡すために必要なモジュール

関連する問題