关于Python函数的作用域及内置函数详解,可以分为以下几个部分:
一、Python函数的作用域
在Python中,函数作用域分为局部作用域、全局作用域和嵌套作用域三种。
1.局部作用域
定义在函数内部的变量称为局部变量,它们只在对应的函数内部生效,函数外部无法访问。
def func():
x = 10 # 定义一个局部变量x
print('在函数内部:x =', x)
func()
print('在函数外部:x =', x) # 这里会报错,提示找不到变量x
上述代码中,变量x是在函数内部定义的,所以它的作用域只在这个函数内部有效。在函数外部访问x时就会报错。
2.全局作用域
定义在函数外部的变量称为全局变量,它们的作用域贯穿整个程序,所有函数都可以访问。
x = 10 # 定义一个全局变量x
def func():
print('在函数内部:x =', x)
func()
print('在函数外部:x =', x)
上述代码中,变量x是在函数外部定义的,所以它的作用域为全局作用域,可以在函数内部和函数外部访问。
3.嵌套作用域
在Python中,如果一个函数定义在另外一个函数内部,则内部函数的作用域既可以访问自己局部作用域中的变量,也可以访问外部函数已经在嵌套作用域中声明的变量。
def func1():
x = 10 # 定义一个局部变量x
def func2():
nonlocal x
x += 1
print('在嵌套函数内部:x =', x)
func2()
print('在外层函数内部:x =', x)
func1()
上述代码中,func2()函数中使用了nonlocal
关键字,表示x是来自于外部函数的嵌套作用域中的变量,而不是重新定义一个新的变量。所以在func2()中修改x的值会影响外部函数的变量x。
二、Python内置函数
Python内置函数是指Python解释器提供的、可以直接使用的函数。比如print()、len()、abs()等函数。
这里介绍一下常用的内置函数:
1.print()
print()函数是Python中最常用、最基础的输出函数。它可以输出文本、数字、变量等。
print('hello world')
x = 10
print(x)
2.len()
len()函数可以返回一个对象的长度或元素个数。
lst = [1, 2, 3, 4, 5]
print(len(lst))
3.abs()
abs()函数可以返回一个数的绝对值。
x = -10
print(abs(x))
4.max()
max()函数可以返回一个可迭代对象中的最大值。
lst = [1, 2, 3, 4, 5]
print(max(lst))
5.min()
min()函数可以返回一个可迭代对象中的最小值。
lst = [1, 2, 3, 4, 5]
print(min(lst))
至此,Python函数的作用域及内置函数的详解就讲解完了。