为了账号安全,请及时绑定邮箱和手机立即绑定

python中方法和函数有什么区别吗?

因为我之前学过C/C++ 也学过Java,那时候其实就有疑问了,在C/C++中基本都叫函数,而在Java中基本都叫方法,所以之前我都,默认将函数和方法等同,认为这只是在不同语言之下的不同叫法,但是在这个廖雪峰的Python进阶的这道题中居然问,为什么是函数而不是方法,这让我不知所措,所以想问方法和函数有什么区别吗?

正在回答

7 回答

方法是与对象(列表、数、字符串等)紧密相连的函数。通常像下面这样调用:

object.method(arguments)

1 回复 有任何疑惑可以回复我~
#1

慕瓜9435863 提问者

也就是说方法是函数的子集,是否可以这么理解,方法必须要有参数代入,而函数可以随意
2018-08-02 回复 有任何疑惑可以回复我~
#2

墨飞飞飞飞飞 回复 慕瓜9435863 提问者

不一定要有参数,但一定要有对象
2018-08-05 回复 有任何疑惑可以回复我~
#3

qq_染上空白_04172504 回复 墨飞飞飞飞飞

既然没有区别,为什么还需要types.MethodType() ,直接函数名不行吗?
2018-08-11 回复 有任何疑惑可以回复我~

python里的函数类似于普通的变量,即fun,调用时得到该函数的内存地址;

python里的方法即该函数的执行,即fun(),调用时得到该函数的返回值。

参考:http://www.runoob.com/python3/python3-class.html

4 回复 有任何疑惑可以回复我~

方法对于参数是有一定要求的,默认都要带上,不是随意的,例如需要  self  cls

0 回复 有任何疑惑可以回复我~

在类里面定义的函数就是方法,方法调用和函数调用一样

0 回复 有任何疑惑可以回复我~

类中的实例方法也叫函数,我是这么理解的

0 回复 有任何疑惑可以回复我~

没有区别,在类中定义的函数就是方法。

3 回复 有任何疑惑可以回复我~

也就是说方法是函数的子集,是否可以这么理解,方法必须要有参数代入,而函数可以随意

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255665    人
  • 解答问题       2949    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

python中方法和函数有什么区别吗?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信