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多进程编程下线程之间变量的共享问题
May 05 Python
python通过socket查询whois的方法
Jul 18 Python
python3音乐播放器简单实现代码
Apr 20 Python
flask使用session保存登录状态及拦截未登录请求代码
Jan 19 Python
Django中针对基于类的视图添加csrf_exempt实例代码
Feb 11 Python
python使用mysql的两种使用方式
Mar 07 Python
Python中判断输入是否为数字的实现代码
May 26 Python
Django框架安装方法图文详解
Nov 04 Python
对pytorch的函数中的group参数的作用介绍
Feb 18 Python
Selenium执行完毕未关闭chromedriver/geckodriver进程的解决办法(java版+python版)
Dec 07 Python
Django+Celery实现定时任务的示例
Jun 23 Python
Python OpenCV超详细讲解读取图像视频和网络摄像头
Apr 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
PHP在字符串中查找指定字符串并删除的代码
2008/10/02 PHP
PHP实现域名whois查询的代码(数据源万网、新网)
2010/02/22 PHP
ThinkPHP中处理表单中的注意事项
2014/11/22 PHP
php实现分页显示
2015/11/03 PHP
WordPress主题中添加文章列表页页码导航的PHP代码实例
2015/12/22 PHP
CL vs ForZe BO5 第一场 2.13
2021/03/10 DOTA
jQuery提示效果代码分享
2014/11/20 Javascript
jQuery使用slideUp方法实现控制元素缓慢收起
2015/03/27 Javascript
使用JQuery中的trim()方法去掉前后空格
2016/09/16 Javascript
学习vue.js表单控件绑定操作
2016/12/05 Javascript
web 屏蔽BackSpace键实例代码
2016/12/24 Javascript
JS简单验证上传文件类型的方法
2017/04/17 Javascript
Angularjs添加排序查询功能的实例代码
2017/10/24 Javascript
jQuery实现的简单前端搜索功能示例
2017/10/28 jQuery
JS实现的计数排序与基数排序算法示例
2017/12/04 Javascript
js生成word中图片处理方法
2018/01/06 Javascript
解决vue项目打包后提示图片文件路径错误的问题
2018/07/04 Javascript
浅谈Angularjs中不同类型的双向数据绑定
2018/07/16 Javascript
ES6知识点整理之对象解构赋值应用示例
2019/04/17 Javascript
JS实现简易计算器
2020/02/14 Javascript
Python urlopen 使用小示例
2008/09/06 Python
编写Python脚本来获取mp3文件tag信息的教程
2015/05/04 Python
Python基于matplotlib绘制栈式直方图的方法示例
2017/08/09 Python
python获取程序执行文件路径的方法(推荐)
2018/04/26 Python
详解Django中间件的5种自定义方法
2018/07/26 Python
Python使用post及get方式提交数据的实例
2019/01/24 Python
python将字母转化为数字实例方法
2019/10/04 Python
在python tkinter界面中添加按钮的实例
2020/03/04 Python
HTML5 贪吃蛇游戏实现思路及源代码
2013/09/03 HTML / CSS
应用数学专业求职信
2014/03/14 职场文书
大学新闻系自荐书
2014/05/31 职场文书
党员“四风”方面存在问题及整改措施
2014/09/24 职场文书
考试没考好检讨书(精选篇)
2014/11/16 职场文书
中秋节慰问信
2015/02/15 职场文书
Python自动化爬取天眼查数据的实现
2021/06/15 Python
微软发布Windows 11今年最大更新22H2(附 ISO 镜像官方下载)
2022/09/23 数码科技