python函数与方法的区别总结


Posted in Python onJune 23, 2019

(1)函数的分类:

内置函数:python内嵌的一些函数。

匿名函数:一行代码实现一个函数功能。

递归函数

自定义函数:根据自己的需求,来进行定义函数。

(2)方法的分类:

普通方法:直接用self调用的方法。

私有方法:__函数名,只能在类中被调用的方法。

属性方法:@property,将方法伪装成为属性,让代码看起来更合理。

特殊方法(双下划线方法):以__init__为例,是用来封装实例化对象的属性,只要是实例化对象就一定会执行__init方法,如果对象子类中没有则会寻找父类(超类),如果父类(超类)也没有,则直接继承object(python 3.x)类,执行类中的__init__方法。类方法:通过类名的调用去操作公共模板中的属性和方法。

静态方法:不用传入类空间、对象的方法, 作用是保证代码的一致性,规范性,可以完全独立类外的一个方法,但是为了代码的一致性统一的放到某个模块(py文件)中。

其次,从作用域的角度来分析:

(1)函数作用域:从函数调用开始至函数执行完成,返回给调用者后,在执行过程中开辟的空间会自动释放,也就是说函数执行完成后,函数体内部通过赋值等方式修改变量的值不会保留,会随着返回给调用者后,开辟的空间会自动释放。

(2)方法作用域:通过实例化的对象进行方法的调用,调用后开辟的空间不会释放,也就是说调用方法中对变量的修改值会一直保留。

最后,调用的方式不同。

(1)函数:通过“函数名()”的方式进行调用。

(2)方法:通过“对象.方法名”的方式进行调用。

class Foo(object): def func(self):  pass#实例化obj = Foo()# 执行方式一:调用的func是方法obj.func() #func 方法# 执行方式二:调用的func是函数Foo.func(123) # 函数

更多Python相关技术文章,请访问Python教程栏目进行学习!

Python 相关文章推荐
用python实现简单EXCEL数据统计的实例
Jan 24 Python
python中pandas.DataFrame排除特定行方法示例
Mar 12 Python
Pycharm学习教程(6) Pycharm作为Vim编辑器使用
May 03 Python
用pandas按列合并两个文件的实例
Apr 12 Python
浅析PHP与Python进行数据交互
May 15 Python
用uWSGI和Nginx部署Flask项目的方法示例
May 05 Python
Python实现结构体代码实例
Feb 10 Python
python3利用Axes3D库画3D模型图
Mar 25 Python
3分钟看懂Python后端必须知道的Django的信号机制
Jul 26 Python
如何用python绘制雷达图
Apr 24 Python
python执行js代码的方法
May 13 Python
Python爬虫之自动爬取某车之家各车销售数据
Jun 02 Python
python中的单引号双引号区别知识点总结
Jun 23 #Python
Python中的pathlib.Path为什么不继承str详解
Jun 23 #Python
Python中判断子串存在的性能比较及分析总结
Jun 23 #Python
树莓派与PC端在局域网内运用python实现即时通讯
Jun 22 #Python
树莓派采用socket方式文件传输(python)
Jun 22 #Python
树莓派用python中的OpenCV输出USB摄像头画面
Jun 22 #Python
树莓派使用USB摄像头和motion实现监控
Jun 22 #Python
You might like
在smarty模板中使用PHP函数的方法
2011/04/23 PHP
PHP APC的安装与使用详解
2013/06/13 PHP
php实现的PDO异常处理操作分析
2018/12/27 PHP
JavaScript Base64编码和解码,实现URL参数传递。
2006/09/18 Javascript
Javascript异步表单提交,图片上传,兼容异步模拟ajax技术
2010/05/10 Javascript
javascript中的对象创建 实例附注释
2011/02/08 Javascript
javascript中局部变量和全局变量的区别详解
2015/02/27 Javascript
js实现类似菜单风格的TAB选项卡效果代码
2015/08/28 Javascript
jQuery实现标题有打字效果的焦点图代码
2015/11/16 Javascript
Jquery和angularjs获取check框选中的值的方法汇总
2016/01/17 Javascript
浅谈react.js中实现tab吸顶效果的问题
2017/09/06 Javascript
原生JS实现移动端web轮播图详解(结合Tween算法造轮子)
2017/09/10 Javascript
新手vue构建单页面应用实例代码
2017/09/18 Javascript
p5.js入门教程之平滑过渡(Easing)
2018/03/16 Javascript
vue awesome swiper异步加载数据出现的bug问题
2018/07/03 Javascript
Koa日志中间件封装开发详解
2019/03/09 Javascript
详解element-ui设置下拉选择切换必填和非必填
2019/06/17 Javascript
javascript数组元素删除方法delete和splice解析
2019/12/09 Javascript
Angular进行简单单元测试的实现方法实例
2020/08/16 Javascript
python基础教程之面向对象的一些概念
2014/08/29 Python
Python之父谈Python的未来形式
2016/07/01 Python
django认证系统实现自定义权限管理的方法
2018/07/16 Python
python openpyxl使用方法详解
2019/07/18 Python
用Python从0开始实现一个中文拼音输入法的思路详解
2019/07/20 Python
详解Python time库的使用
2019/10/10 Python
Python读取excel文件中带公式的值的实现
2020/04/17 Python
英国品牌男装折扣网站:Brown Bag
2018/03/08 全球购物
世界各地的当地人的食物体验:Eatwith
2019/07/26 全球购物
新员工培训个人的自我评价
2013/10/09 职场文书
会计专业应届生求职信
2013/11/24 职场文书
小学生倡议书范文
2014/05/13 职场文书
消防志愿者活动方案
2014/08/23 职场文书
2014年光棍节活动策划方案(创意集锦)
2014/09/29 职场文书
西双版纳导游词
2015/02/03 职场文书
乡镇团委工作总结2015
2015/05/26 职场文书
《平移和旋转》教学反思
2016/02/19 职场文书