אם פונקציה מחזירה אינסטנס של קלאס שיצרנו

אז נכון לכתוב בטייפינג Any כטיפוס שהפונקציה מחזירה ?

כמה פתרונות מstackoverflow:

https://stackoverflow.com/questions/33533148/how-do-i-specify-that-the-return-type-of-a-method-is-the-same-as-the-class-itsel

https://stackoverflow.com/questions/41417679/how-to-annotate-a-type-thats-a-class-object-instead-of-a-class-instance

תבדוק גם לגבי לרשום פשוט object

לייק 1

תשתדל להמנע בכל מחיר מלכתוב Any, כמעט תמיד יש פתרון טוב יותר

לייק 1

מה לגבי מחלקה שיורשת ממחלקה אחרת?
לדוגמה:

class A:
   def __init__(self, x, y, color):
      self.x = x
      self.y = y
      self.color = color


class B(A):
   def __init__(self, **kwargs):
      super().__init__(**kwargs)

האם הtype annotations של הkwargs הוא Any או Union(float, str) לדוגמה?

לייק 1

אז kwargs זה באמת מקרה מיוחד שמקבל Any לא מעט פעמים