我正在使用Python3.8.5和mypy 0.790。
在此代码块上运行mypy将引发一个错误:
# mypy_and_the_walrus.py
z = "asd"
if (p := z):
print('hello') # error: invalid syntax运行该程序是可以的:
❯ python -i mypy_and_the_walrus.py
hello
>>> p
'asd'我还没有弄清楚是什么问题。
注意:
我有一个将python版本设置为3.8的mypy.ini:
# mypy.ini
[mypy]
python_version = 3.8对我来说,这可能是愚蠢的事情,但我一直未能找到解决办法。
我找到的唯一解决办法是:
第二个方案似乎有一个解决办法,但解决办法是
发布于 2021-02-08 22:30:05
答案在第二个环节:
然而,答案并不十分明确:
似乎我们需要在Python3.8上运行mypy本身,以支持Python3.8中引入的语法。目前,我们正在使用Python3.7在沙箱中运行mypy。我将更新Docker映像以修复此问题。
解决办法:
❯ python3.8 -m mypy prac.py
Success: no issues found in 1 source filehttps://stackoverflow.com/questions/66110324
复制相似问题