PyCharm中Python代码提示:Shadows name from outer scope

函数内部的变量,如果和函数被调用的外部的变量一样的话,就被PyCharm中叫做shadows name

这样的话,容易引发不容易觉察到的,由于函数内部和外部的变量名一致而引发的一些问题:

比如:内部函数名引用时不小心写错了时,就会导致其实调用了外部变量名,从而导致逻辑错乱。

所以解决办法是:

确保函数内部和外部的变量名不要重复,这样就不会导致可能由此导致的错误了。

错误示例

def func1(arg1='test'):

     arg1 = arg1   # 错误,内部变量名字最后不要和外部变量名字一致

arg1='test2'  # 错误,这里最后不要和调用的函数变量名字一致

func1(arg1=arg1)

原文地址:https://www.cnblogs.com/shengulong/p/10171386.html