问题描述
我得到了mypy引发的以下回溯:
dust/core/validator/_validators.py:504: error: Unsupported operand types for < ("str" and "ValidateProperty")
dust/core/validator/_validators.py:504: error: Unsupported operand types for < ("float" and "ValidateProperty")
dust/core/validator/_validators.py:504: error: Unsupported operand types for < ("float" and "str")
dust/core/validator/_validators.py:504: error: Unsupported operand types for < ("str" and "float")
用于类似下面的代码。
class Value(ValidateProperty):
def __init__(min_value: VALUE_RANGE=None,max_value: VALUE_RANGE=None):
if min_value is not None and max_value is not None:
if max_value < min_value:
raise ValueError(f"max_value can not be less than min_value")
VALUE_RANGE
在哪里
VALUE_RANGE = typing.Union[FLOAT,STRING,None]
这样:
FLOAT = typing.Union[float,"ValidateProperty",None]
STRING = typing.Union[str,None]
和ValidateProperty
是具有__get__
和__set__
方法的ABC类。
如何确保mypy获得的共同值始终是相同类型的?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)