深入理解Python函数的九个黄金法则

时间:2022-09-18 23:45:21

编程离不开函数。Python的函数除了具备传统意义上的函数特征外,又被赋予了其他一些特性,让它更灵活、更强大。这篇文章结合之前我推荐的一本Python宝书,又添加一些我的实践和理解,总结了深入理解Python函数的9个黄金法则。

深入理解Python函数的九个黄金法则

1. 函数是对象

深入理解Python函数的九个黄金法则

这意味着,yell 能赋值给 bark,如下所示:

深入理解Python函数的九个黄金法则

而bark轻松被赋予yell的功能

深入理解Python函数的九个黄金法则

2. 删除函数

函数既然是对象,我们可以删除函数,如下:

深入理解Python函数的九个黄金法则

但是bark还是能够正常调用:

深入理解Python函数的九个黄金法则

3. 这说明:函数名字和函数本身完全是分开的

4. 函数既然是对象,就可以结合数据结构使用

深入理解Python函数的九个黄金法则

5. 函数既然是对象,就可以作为函数参数

深入理解Python函数的九个黄金法则

6. 函数既然是对象,就可以在嵌套在函数体内

如下所示,函数内再定义2个函数对象

深入理解Python函数的九个黄金法则

7. 内层函数对象能够记忆住父函数的变量

官方术语:闭包,记住这个例子:

深入理解Python函数的九个黄金法则

8. 所有的函数都是对象,但是所有的对象并不一定都是函数

9. 对象成为函数需要实现__call__协议

实现__call__协议后,plus_3对象便成为函数,可以plus_3(4)了!强大。

深入理解Python函数的九个黄金法则

以上就是9个灵活使用函数的黄金法则,希望对你有用。

原文地址:https://mp.weixin.qq.com/s?__biz=MzI3NTkyMjA4NA==&mid=2247503818&idx=1&sn=0167900359db477bf12fbaa0acf2728a&chksm=eb7fe201dc086b17630e77e29f7aa84b91ddf441fbbe6d031183475bfff48359bf9b74b6760f&mpshare=1&s