我想在Python中創建自己的參數化類型爲類型提示使用:如何在Python中創建自己的「參數化」類型(如`Optional [T]`)?
class MaybeWrapped:
# magic goes here
T = TypeVar('T')
assert MaybeWrapped[T] == Union[T, Tuple[T]]
不要介意人爲的例子;我怎樣才能實現這個?我查看了Union和Optional的源代碼,但它看起來像是我想避免的一些相當低級的hackery。
文檔中的唯一建議來自example re-implementation of Mapping[KT,VT]
that inherits from Generic。但是這個例子更多的是關於__getitem__
方法而不是關於類本身。
謝謝,這裏使用'TypeVar'就是我所缺少的。非常神奇的是,仿製藥「就這樣工作」。 – shadowtalker