python函数之--返回值和作用域

版权声明:博文千万条,版权第一条。转载不规范,博主两行泪 https://blog.csdn.net/Leeeey/article/details/89279882

返回值

  • python函数使用return语句返回“返回值”
  • 所有函数都有返回值,如果没有return语句,隐式调用return None
  • 一个函数可以存在多个return语句,但是只有一条可以被执行。如果没有执行return,隐式调用return None
  • return语句不一定是函数语句块的最后一句,但一定是函数执行的最后一句
  • 如果有必要,可以显式调用return None,简写为return

作用域

一个标识符的可见的范围,就是这个标识符的作用域。一般常说的事变量的作用域

def foo():
	x = 100
print(x) #可以访问到么?

上述代码中的x不可以访问到,会抛出异常(NameError:name ‘x’ is not defind),原因在于函数是一个封装,它会开辟一个作用域,x变量被限制在这个作用域中,所以在函数外部x变量不可见。

Ps:每一个函数都会开辟一个作用域

作用域分类

  • 全局作用域
    • 在整个程序运行环境中都可见
    • 全局作用域中的变量称为全局变量
  • 局部作用域
    • 在函数、类等内部可见
    • 局部作用域中的变量称为局部变量,其使用范围不能超过其所在的局部作用域
#局部变量
def fn1():
	x = 100 #局部作用域,x为局部变量,适用范围在fn1内
def fn2():
	print(x) #无法访问x
print(x) #无法访问x
#全局变量
x = 100 #全局变量,也可在函数外定义
def fn3():
	print(x)#可以访问x
fn3()
  • 一般来说,外部作用域的变量在函数内部可见,可以使用
  • 反之,函数内部的局部变量不能被函数外部使用

globle语句

待更

猜你喜欢

转载自blog.csdn.net/Leeeey/article/details/89279882