与えられた:
- クラス インスタンス (CL) と参照インスタンス (r) のセット
- クラスには、「getA」、「getB」などのいくつかの getter があります。
Todo: 'getA', 'getB', ... を比較して、'r' に一致する CL のインスタンスを見つける.
私のコードは次のようになります。
def selector(r, cl, cmp_function_name):
return [i for i in CL if getattr(r, cmp_function_name)() == getattr(i, cmp_function_name)()]
# call it like this:
selector(r, cl, 'getA')
selector(r, cl, 'getB')
...
しかし、これがきちんとしたものかPythonicかはわかりません。それについてどう思いますか、どのようにコーディングしますか?
ありがとう!