私は基本クラスから継承された2つの子クラスを持っています。私は実際にいくつかの条件に応じて子クラスのオブジェクトの1つを返す異なるスクリプトに1つのメソッドを持っています、同じ方法を使用して別の子オブジェクトを返すPythonの正しい方法です。私は彼らのタイプが同じで、同じベースクラスから継承されているので、はいと思いますか?または、型キャストを行う必要がありますか?以下の例は、単純な言葉で質問を説明するためのものです。同じメソッドを使用して条件に応じて異なる子オブジェクトを返します
class A():
class B(A):
Different methods
class C(A):
Different methods
その他のスクリプト:
def test_func:
if <some-condition>
new_obj = B()
else
new_obj = C()
return new_obj
これは問題ありません。ファクトリデザインパターンの例です。 – Barmar
Pythonはダック型言語であり、型キャストはありません。あなたが使用しているアプローチは正しいですが、それ以外のことはあまりありませんが、例のコードは構文的に正しいPythonではありません。 –
[XY問題](http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem)のような匂いがします。あなたは正確に何をしようとしていますか? – ozgur