海外酒店网站建设,邢台信息港房产,有教做桥梁质检资料的网站吗,南昌网站建设哪家好薇一、创建和调用函数
pass语句表示一个空的代码块#xff0c;我们经常先写好函数#xff0c;pass占一个坑#xff0c;等规划好之后再来填坑。 函数也是可以指定参数的#xff0c;我们会把参数传进去用来替代形参。 在Python里如果想要返回值#xff0c;不需要指定函数的返…一、创建和调用函数
pass语句表示一个空的代码块我们经常先写好函数pass占一个坑等规划好之后再来填坑。 函数也是可以指定参数的我们会把参数传进去用来替代形参。 在Python里如果想要返回值不需要指定函数的返回类型直接用return语句即可。 只要遇到return语句函数便会立刻返回而不必管后面的值。
同时任何一个函数其实都有返回值没有显示说明的函数会返回一个none值。 二、函数的参数
1.位置参数
Python中我们是按照传入参数的顺序去给形式参数赋值的这些位置固定的参数又称为位置参数。 2.关键字参数
关键字参数只要知道参数的名字就可以了顺序无所谓 如果想要混合使用位置参数和关键字参数Python要求位置参数必须在前。
3.默认参数 使用默认参数的话需要把默认参数放到后面位置参数在前面。
当我们使用help()函数查看函数文档时经常会看到一个/
/左侧只能使用位置参数不能用关键字参数。而/右侧是可以随意使用什么参数的。
同样的参数列表加个*表明左侧无所谓右侧只能使用关键字参数。
4.收集参数
有时候我们不清楚用户会传入多少个参数比如print函数我们事先无法预知用户会让输出多少个字符串这时候就要用到收集参数。
收集参数的语法很简单只要在参数列表里的参数前面加上一个* 为什么收集参数可以这样呢我们不妨直接把参数打印出来 我们发现了什么元组在元组那里我们说过元组具有打包和解包的能力。
同样的我们如果想让函数返回多个值也是可以的Python会返回一个元组 如果想要在收集参数后面定义其它参数那么我们就应该使用关键字参数以便告诉Python哪里开始是我们传入的参数。
收集参数还可以打包为字典方法是使用**同时传参时必须使用关键字参数因为字典是键值对组成的。同时我们可以混合使用几种参数 那么在我们学过的函数或方法中有没有哪个函数是同时使用两种参数的呢有format函数 5.解包参数
当我们想传入一个字典或者元组时可以用*或者**传参。 三、作用域
1.形参与实参
局部变量定义在函数里作用域仅仅限于该函数中。
全局变量在任何函数的外部定义作用域为全体。
函数里的只是形参形参的改变不会影响到实参。 2.global语句
global语句是一种声明语句用于告诉Python我现在在函数内部要修改的就是全局变量的值。 3.嵌套函数 4.nonlocal语句
一般而言func2里修改x的值是不会影响到func1的除非我们使用nonlocal语句定义现在操作的就是外部函数变量。 5.LEGB规则
Python中的LEGB规则用于查找和解析变量的作用域。LEGB是一个缩写代表四个作用域以从最内层到最外层的顺序查找变量。
Llocal局部作用域。
EEnclosed嵌套函数的外层函数作用域。
GGlobal全局作用域。
BBuild-In内置作用域。