泛型函数的条件 Python 类型

问题描述 投票:0回答:0

假设我有一个类 A 和一个派生类 B:

from typing import Type, TypeVar

class A:
    type_field: Type[int] = int

class B(A):
    type_field: Type[str] = str

我想要一个功能

T = TypeVar('T')

def func(object: T, some_field): 
    ...

A 希望使用 T.type_field 类型对

some_field
进行注释(例如,显示类型提示),假设 T 源自 A 或 A 本身。换句话说,我想 call
func(A(), ...
建议我接下来传递
int
,而 call
func(B(), ...
应建议传递字符串。有没有办法在Python 3中实现它?

我想为函数开发正确的类型

def func
,以便开发人员根据首先传递的对象类型获得正确的类型提示。

python typing
© www.soinside.com 2019 - 2024. All rights reserved.