|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
函数是一段 组织好的、可重复使用的、用来实现特定功能的 代码块。
位置参数 关键字参数 默认参数
这时就需要构造一个函数,并依次定义好四个参数代表上面的四个信息,在调用的时候按照按既定位置传入参数就可以。
吉永老师在调用函数时,就用到了 位置参数,按位置,依次传入了 name、age、height、weight 四个参数纪录小新和风间的信息。
由于新入园的小朋友很多,要输入的四个信息里,有三个是数字,吉永老师有时候会弄混输入的顺序,另外之后检查自己的输入时,这么多数字也会看花眼,怎么办呢?
位置参数中,我们需要记得定义函数时每个参数对应的位置,而关键字参数可以 无视位置。我们可以很轻松地给对应的参数赋值,并且能一眼看出各个参数所对应的含义,在以后检查我们的代码时,也就更加方便了。
提示:位置参数可以和关键字参数一起使用,但要保证所有位置参数都在关键字参数前,否则程序会因为识别错乱而报错。
Python 在解析参数时,是优先考虑 位置参数 的,位置参数 必须先满足才能考虑其他参数。因此下面代码才是可行的:
我们要照顾机器,将默认参数写在最后,这样机器发现输入的参数用完后,才会在最后寻找函数内部的默认参数。
全局变量 在当前写的代码中一直起作用。全局变量 有效的的范围,叫作 全局作用域。
局部变量 只在一定范围内有效,在范围外就无效了。定义函数的代码块中,形成了一个封闭的系统,这其中定义的变量,都是 局部变量。局部变量 有效的的范围,叫作 局部作用域。
由于 全局变量 作用于整个环境,所以就算跑到自成一体的的函数内部,也是有效的。而函数内部的 局部变量 出了函数外,离开自己的 局部作用域,就无效了。
这时候又要请出我们的 global 关键字了。当函数内部出现了一个与全局变量同名的变量, 使用 global 变量名 语句会“撤销”这个变量的“自主权”,它就再也成不了局部变量了。加上 global 关键字,相当于告诉大家,有我 global 在,谁也别想搞自己的“小团体”,大家要团结一致!
在什么情况下要在函数内加 global,老师帮你总结一下:
在函数外想要使用函数内的变量(全局作用域使用局部变量)。如果不加 global,则无法在函数外访问函数内的变量。
在函数内的修改函数外的变量(局部作用域修改全局变量)。如果不加 global,只是在函数内定义了和全局变量同名的变量,两者井水不犯河水。
|
|