考虑以下计划:
from decimal import Decimal
from typing import Union
def foo(bar: Union[Decimal, int]):
print(Decimal(1) + bar)
print(bar + Decimal(1))
为什么mypy
会在第二次打印()中抱怨?
$ mypy foo.py
foo.py: note: In function "foo":
foo.py:6: error: Unsupported operand types for + ("Union[Decimal, int]" and "Decimal")
我在Python 3.5.1,Ubuntu 16.04上使用mypy 0.3.1。
编辑:这似乎是bug in mypy。