python变量与变量作用域

1. c语言中,变量的定义会为变量分配一块内存,变量的内存地址不会发生改变,当变量的值发生改变时,改变的是对应内存地址中的值。
2. python中,给变量赋值时,变量保存的是一个对象的引用,如果想改变变量的值,其实改变的是变量保存的引用,使变量指向了另一个对象。
3. 在函数中执行赋值操作时,会创建一个局部变量,如果想在函数中通过赋值‘=’改变一个全局变量,则需要用关键字global申明,只要出现了‘=’操作符,则这个变量就是局部变量,除非显示申明为global。
4. LEGB,在某一作用域内想使用某个变量时,会按照LEGB的顺序来查找,找不到则会报错。
5. 给函数传参,函数的形参是一个局部变量,这个局部变量和传入的实参都绑定在某一对象上,函数运行完后,将这个局部变量会被解绑。
6. 函数return后,接收的变量会绑定在return的对象上,return结束后会把原函数内绑定在这个对象上的变量解绑。

猜你喜欢

转载自blog.csdn.net/CSDN_Gjx/article/details/85608303