当你调用python函数时,它会检查参数,如果你传递了一些与函数签名不对应的东西,就会引发TypeError
:
A takes from X to Y positional arguments but Z were given
got multiple values for argument X
got an unexpected keyword argument
等。
我想看看执行这些检查的代码,这样我就可以更好地理解python如何以及何时执行这些检查。
发布于 2019-06-06 05:44:10
在CPython实现中,相关的检查由_PyEval_EvalCodeWithName函数执行。例如,下面是check for the number of positional arguments
下面是参考图的一部分:
https://stackoverflow.com/questions/56468427
复制相似问题