def fn()
pass
a=2
fn()
a=2是全局变量吗 a=2 和def同级
d=2是的,但是最好不要包含在他之中,注意编码规范
判断是不是全局变量,不能只看是否跟函数同级
因为函数本身还可以嵌套
直接放到包里的就叫全局变量
而放到class里面的那叫静态属性
放到函数里的就是局部变量
-=-=-=
要改写全局变量的值,需要声明为global
如果变量是定义在外层函数中的,内层函数要用,要声明为nonlocal
如果是定义在类里面的,比如class A里有个变量a,那么直接使用A.a调用,注意此处A是类型,不是A的一个实例
而如果是class A里面有一个变量叫self.b,那么需要先将A实例化,A a1=A(),然后再访问a1.b
如果这是完整代码,那么这就是全局变量
可以简单理解为,只要不是在 def
和 class
中定义的都是全局变量。
对于你给出的内容来说,a=2 是全局变量
a是全局变量【望采纳!!!】
是的
再做一个函数,把一个a变量放进去,做自己加实验,自己体会一下