2

私はPythonに少し慣れていません。検索して検索してきましたが、これに対する有用な答えが見つかりません。

tool1、tool2 などという名前のクラスのインスタンスがあります。

ユーザー入力によって定義された文字列を取得し、それを使用して、クラスのインスタンスの 1 つに等しい変数 (current_tool) を設定するにはどうすればよいですか? 例えば:

tool1 = ...
tool2 = ...

current_tool = 0

my_string = 'tool1'

current_tool を my_string に等しく設定するにはどうすればよいcurrent_tool = tool1ですか?

文字列が単なるコードになるように、文字列から引用符を「削除」する方法を本質的に探しています。exec または eval を使用して行った試みはすべてうまくいきませんでした。

どんな助けでも大歓迎です。ありがとうございました。

4

1 に答える 1

1

辞書を使う:

tools = {'tool1': ...,
         'tool2': ...}

my_string = 'tool1'
current_tool = tools[my_string]
于 2013-07-28T19:10:26.773 に答える