そのため、サブクラスにプロパティとしてアクセスできるクラスを含む.pyファイルがあります。これらのサブクラスはすべて事前に定義されています。また、すべてのサブクラスが同じ機能を持っている必要があります(独自のサブクラスをプロパティとしてアクセスできるようにする)。私が直面している最大の問題は、の実装内で現在のクラスにアクセスする方法がわからないことです__getattr__()
。そのため、ここから始めるのがよいでしょう。
これが私がこれまでに試したものを使ったPython+擬似コードです。__getattr__()
クラスのインスタンスでのみ機能しているように見えるので、機能しないと確信しています。その場合、申し訳ありませんが、PythonでのOOPについてはあまり詳しくありません。
class A(object):
def __getattr__(self, name):
subclasses = [c.__name__ for c in current_class.__subclasses__()]
if name in subclasses:
return name
raise AttributeError