函数二

函数二

本篇文章将继续和大家聊聊一些函数的知识,比如函数的返回值,变量的作用域,命名空间,以及有趣的递归函数。

函数的返回值return

return的简介

函数的返回值是函数执行后的结果,用return来指定函数的返回值,我们可以直接使用函数的返回值,也可以通过变量来接收函数的返回值,注意return后可接一切对象,包括函数。如:
在这里插入图片描述

return的部分特性

在函数中我们只写return(后面不带对象)或者不不写return语句,直接调用函数使用函数值,相当于return none;另外return可以用于结束函数(return后面的函数代码不会再执行)。如:
在这里插入图片描述

文档字符串(help函数)

help()函数可以用来查询其它函数的使用方法,语法规则:help(函数对象),比如help(print)

在这里插入图片描述

函数的作用域

作用域指的是变量生效的区域,包括全局作用域以及函数作用域。

全局作用域

全局作用域在程序执行时创建,在程序执行结束时销毁,所有函数以外的部分都是全局作用域,在全局作用域中定义的变量,都属于全局变量,全局变量可以在程序的任意位置访问。
如:
在这里插入图片描述

函数作用域

函数作用域在函数调用时创建,在调用结束后销毁,函数每调用一次就会产生一个新的作用域,在函数作用域中定义的变量都是局部变量,它只能在函数内部被访问到。
在这里插入图片描述

关键字global

global可以在函数内部对全局变量进行修改,语法规则:global 变量,如:
在这里插入图片描述

命名空间

命名空间实际上就是一个字典,是一个专门用来存储变量的字典;locals()用来获取当前作用域的命名空间, 如果在全局作用域中调用locals()则获取的是全局命名空间,如果在函数作用域中调用,则获取的是函数的命名空间 ,返回是一个字典。
在这里插入图片描述

globals()函数

globals()函数,可以在任意位置获取全局命名空间。如:
在这里插入图片描述

递归式函数

递归式函数就是在函数中调用自己。递归式的函数必须满足两个条件:
1.基线条件。问题可以分解为最小的问题,当满足基线条件的时候,递归就不在执行了;
2.递归条件。将问题可以一层层分解的条件。
如:
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值