#11774·pyright

位置参数不匹配,导致预期/接收的交换参数数量过多

作者: MeGaGiGaGon创建于 2026年9月16日更新于 2026年9月16日
标签bug

** 描述错误** 在下面的代码/诊断中,除此部分外,信息是正确的:

只定位参数不匹配; 期望 2 但收到 1

这个错误是倒着的,因为这里被质疑的可转让性是""(int,int)-""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

仅位置参数不匹配; 期望 1 但收到 2

其余的诊断,包括"功能接受太多的位置参数"部分是正确的.

** 守则或截图** Pyright Playground中代码.

zz
从输入中调用

def 接受  1(x:可调用 [[int], int] -- > 无:.

f 错误( 二: 可调用 [ int, int], int] -- > 无:
接受 1(2)

诊断结果:

类型"(int, int) - > int"的参数不能在函数"接受  1"中指定为类型"(int) - > int"的参数"x".
类型 “ (int, int) - > int” 无法指定为“ (int) - > int” 类型
仅位置参数不匹配; 期望 2 但收到 1
函数接受太多的位置参数; 期望 1 但收到 2 (report ArgumentType)

** VS 代码扩展或命令行** 使用 Pyright 版本 1.1.414 在 Pyright 游戏场上测试

内容来源: microsoft/pyright