2016-07-20 5 views
-3

pythonファイルをどのように変数として呼び出すのだろうか。 iは明らかに例が動作しない一つのファイルさまざまなpythonファイル全体を変数として反復する

の名前ですが、それはケースを示していることを想像してみてください。すべてのファイルは

for i in test: 
    '%d'.ClassName.method(variables) %(i,) 
+0

なぜこれをやりたいですか? – squiguy

+0

ディレクトリにあるファイルをオブジェクトとして取得し、実際のファイルオブジェクトを反復するためにosモジュール機能を使用するだけではどうですか? [文字列変数からインポートモジュール]の –

+0

可能な複製(http://stackoverflow.com/questions/8718885/import-module-from-string-variable) –

答えて

0

質問が明確にされている可能性が同じクラス構造を持っているが、私はあなたが求めているものを知っていると思います。変数として使用する値の束(この場合はファイル名)があります。以前は同様の要件がありましたが、私の場合はメソッド名として文字列を使用する必要がありました。 add_rule_sender_email_addressadd_rule_sender_domain、この場合等

は、私がのでselfを使用した:上記のコードで

method = getattr(self, "add_rule_%s" % rule_type) 
method(argument1, argument2) 

は、rule_type値を保持し、それが sender_email_addresssender_domain、等私は、対応する方法が書かれているかもしれませんそれらのメソッド( add_rule_xxx)が同じクラスに存在する場合、それらが異なるクラスにある場合、そのハンドルを使用する必要があります。

そうでない場合は、locals()globals()を使用して、別の解決策があります。参照:Dynamically set local variable

関連する問題