Python 如何在通用[T]实例生命周期的早期从其访问T?

Python 如何在通用[T]实例生命周期的早期从其访问T?,python,python-3.x,generics,Python,Python 3.x,Generics,哦,现在问这个问题让我觉得很做作,我已经接受了另一种方法,但是Python的键入模块让我感到困惑 我知道我能做到: 导入键入 T=typing.TypeVar(“T”) 类MyGenericClass(泛型[T]): def a_方法(自身): 打印(自/原始类) MyOtherGeneric[SomeBaseClass]().a_方法() 打印SomeBaseClass。也许,我会坚持使用这种能力来实现我最终想要做的事情(基于T修改功能),但我现在一直想知道所有这些是如何工作的 最初,我希望

哦,现在问这个问题让我觉得很做作,我已经接受了另一种方法,但是Python的
键入
模块让我感到困惑

我知道我能做到:

导入键入
T=typing.TypeVar(“T”)
类MyGenericClass(泛型[T]):
def a_方法(自身):
打印(自/原始类)
MyOtherGeneric[SomeBaseClass]().a_方法()
打印
SomeBaseClass
。也许,我会坚持使用这种能力来实现我最终想要做的事情(基于
T
修改功能),但我现在一直想知道所有这些是如何工作的

最初,我希望在实例化对象时或之后不久,而不是在其生命周期的后期,从类内部访问基本类型信息(值
T

作为一个具体的例子,在下面的代码中,我想要一些东西来替换
?n?
中的任何一个,这样我就可以在对象生命周期的早期获得值
SomeOtherBaseClass
。也许有些代码也需要超出其中一行

导入键入
T=typing.TypeVar(“T”)
类MyOtherGenericClass(泛型[T]):
定义初始化(self,*args,**kwargs):
打印(?1?)
定义(klass,*args,**kwargs):
打印(?2?)
MyOtherGenericClass[SomeOtherBaseClass]()
我试图在实例化时(或者在实例化之后不久)根据
T
的值设置一些实例变量。我正在重新思考我的方法,因为
类型化
模块,特别是泛型模块,似乎仍处于不稳定的开发阶段

那么…这可能吗?至少在3.8中,
\uuuuu orig\u class\uuuuuu
的用户在过程中被设置,但是该
\uuuu调用方法如何被调用?什么时候会这样

相关阅读: