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实现文件分组复制到不同目录的例子
Jun 04 Python
收集的几个Python小技巧分享
Nov 22 Python
Python多进程同步简单实现代码
Apr 27 Python
pandas DataFrame数据转为list的方法
Apr 11 Python
解决Mac下首次安装pycharm无project interpreter的问题
Oct 29 Python
python tkinter实现界面切换的示例代码
Jun 14 Python
python判断一个对象是否可迭代的例子
Jul 22 Python
使用 Supervisor 监控 Python3 进程方式
Dec 05 Python
Python pandas 列转行操作详解(类似hive中explode方法)
May 18 Python
python函数超时自动退出的实操方法
Dec 28 Python
基于注解实现 SpringBoot 接口防刷的方法
Mar 02 Python
python实现大文本文件分割成多个小文件
Apr 20 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
mysql中存储过程、函数的一些问题
2007/02/14 PHP
支持php4、php5的mysql数据库操作类
2008/01/10 PHP
php读取文件内容的三种可行方法示例介绍
2014/02/08 PHP
PHP进程通信基础之信号量与共享内存通信
2017/02/19 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
2020/04/04 PHP
jQuery之按钮组件的深入解析
2013/06/19 Javascript
jquery与js函数冲突的两种解决方法
2013/09/09 Javascript
JS、jquery实现几分钟前、几小时前、几天前等时间差显示效果的代码实例分享
2014/04/11 Javascript
js中的如何定位固定层的位置
2014/06/15 Javascript
基于Bootstrap实现的下拉菜单手机端不能选择菜单项的原因附解决办法
2016/07/22 Javascript
浅谈EasyUI常用控件的禁用方法
2016/11/09 Javascript
微信小程序中换行空格(多个空格)写法详解
2018/07/10 Javascript
浅析JS中回调函数及用法
2018/07/25 Javascript
解决element-ui中下拉菜单子选项click事件不触发的问题
2018/08/22 Javascript
Vue插槽原理与用法详解
2019/03/05 Javascript
微信小程序本地存储实现每日签到、连续签到功能
2019/10/09 Javascript
vue列表数据发生变化指令没有更新问题及解决方法
2020/01/16 Javascript
[02:59]2014DOTA2西雅图国际邀请赛 圆满落幕中国夺冠
2014/07/23 DOTA
老生常谈Python之装饰器、迭代器和生成器
2017/07/26 Python
python实现堆和索引堆的代码示例
2018/03/19 Python
python爬取各类文档方法归类汇总
2018/03/22 Python
用TensorFlow实现lasso回归和岭回归算法的示例
2018/05/02 Python
实例详解Matlab 与 Python 的区别
2019/04/26 Python
pandas 中对特征进行硬编码和onehot编码的实现
2019/12/20 Python
Python实现哲学家就餐问题实例代码
2020/11/09 Python
python线程优先级队列知识点总结
2021/02/28 Python
高中生的学习总结自我鉴定
2013/10/26 职场文书
会计系个人求职信范文分享
2013/12/20 职场文书
读书活动实施方案
2014/03/10 职场文书
食品安全标语
2014/06/07 职场文书
卫校毕业生自我鉴定
2014/09/28 职场文书
给老婆的道歉信
2015/01/20 职场文书
电影开国大典观后感
2015/06/04 职场文书
个人合作协议范本
2015/08/06 职场文书
Python OpenCV快速入门教程
2021/04/17 Python
教你在 Java 中实现 Dijkstra 最短路算法的方法
2022/04/08 Java/Android