3

私のアプリケーションには、さまざまな操作を実行する関数でいっぱいのクラスがあります。これらの操作は、1 つのディクショナリ キーのみに関連しています。辞書のキーをそれぞれの機能に関連付けるにはどうすればよいですか? このツールの目的は、一連のキーが与えられたときに適切な一連の機能を使用することです。

これは私が現在それを解決する方法です:

class MyClass:

    def FuncA(self):
        # Some code -----------------------------

    def FuncB(self):
        # Some code -----------------------------

myDict["Objective A"] = MyClass.FuncA()
myDict["Objective B"] = MyClass.FuncB()

私のプログラムの性質上、使用されるキーのセットは時々変わる可能性があります。したがって、私が持っているようにハードコーディングしても意味がありません。キーのセットをループして、適切な機能を実行できるようにしたいと考えています。ObjectiveA は FuncA に関連付けられていることに注意してください。したがって、ObjectiveA がキーのリストに表示された場合、操作を処理してそれぞれの値のペアを設定するために、FuncA を呼び出す必要があります。

これを想定して:

for k in myDict.keys():
    myDict[k] = MyClass.TheAssociatedFunction()
4

1 に答える 1

11
myDict["Objective A"] = MyClass.FuncA()

の戻り値を関連付けますMyClass.FuncA。関数自体を関連付ける場合:

myDict["Objective A"] = MyClass.FuncA
myDict["Objective B"] = MyClass.FuncB

次に、直接呼び出すことができます。

myDict["Objective A"]()
于 2012-07-11T15:10:18.747 に答える