python学习笔记分享(十)python的函数(二)

IT Xiao Ang Zai 7月28号

现在,让我们进行继续今天的python学习:

版本:python3.64

编程软件:pycharm

一:python函数和过程

不写return语句的时候,默认python会认为函数是return None的,所以说python所有的函数都是有返回值的。

二:python的返回值

python可以同时返回多个值,也可以打包成列表和元组后返回多个值。

三:全局变量和局部变量

python在运行函数的时候,利用栈进行存储,当执行完该函数后,函数中的所有数据都会被自动删除。所以函数外是无法访问函数内的局部变量。

全局变量在整个程序中都可以访问到。

四:内嵌函数和闭包

1.global关键字

在函数内部如果试图修改全局变量,python就会使用在函数内部创建一个同名的局部变量,这样修改的结果只会影响到局部变量,而不会影响到全局变量。

但如果你执意要修改这个全局变量的话,可以用global关键字来达到目的。

效果如下:

2.内嵌函数

python的函数定义是可以嵌套的,也就是允许在函数内部创建另一个函数,这种函数叫内部函数或者内嵌函数。而且它的作用域都在外部函数之内,在外部函数之外就会报错。

效果如下:

3.闭包

如果在一个内部函数里,对在外部作用域(但不是在全局作用域)的变量进行引用,那么内部函数就被认为是闭包。也不能在外部函数以外的地方对内部函数进行调用。外部函数的变量和内部函数的变量相当于全局变量和局部变量。在内部函数中,不能对外部函数的变量进行修改。如果你想在内部函数中修改外部函数中的变量的值,可以用nonlocal关键字,使用方法和global一样。

效果如下:

4.lambda表达式

用lambda关键字来创建匿名函数,基本语法是在冒号(:)左边放原函数的参数,可以有多个参数,用逗号隔开;冒号右边是返回值。可以用该表达式省去定义函数时用def语句,不考虑给函数起名问题。

效果如下:

今天就先讲到这里,欢迎大家持续关注。

猜你喜欢

转载自blog.csdn.net/ITxiaoangzai/article/details/81264049