Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python中的函数和方法_Python_Function_Methods - Fatal编程技术网

python中的函数和方法

python中的函数和方法,python,function,methods,Python,Function,Methods,一个愿意成为python程序员的新手(0.1级)提出的问题。我很抱歉我的问题如此愚蠢 我有时会混淆函数和方法。例如random.choice():random是一个模块,choice是一个函数。我一直认为len()是一种方法,但事实证明它本身就是一个函数 random.choice():random是一个模块,choice是一个函数 对 我一直认为len()是一个方法,但事实证明它本身就是一个函数 len()是一个内置函数 方法是绑定到对象(某个类的实例)的函数 Foo类: 定义初始化(self

一个愿意成为python程序员的新手(0.1级)提出的问题。我很抱歉我的问题如此愚蠢

我有时会混淆函数和方法。例如
random.choice()
:random是一个模块,choice是一个函数。我一直认为
len()
是一种方法,但事实证明它本身就是一个函数

random.choice()
:random是一个模块,choice是一个函数

我一直认为len()是一个方法,但事实证明它本身就是一个函数

len()
是一个内置函数

方法是绑定到对象(某个类的实例)的函数

Foo类:
定义初始化(self,name):
self.name=名称
def bar(自):
打印(self.name)
f=Foo(“乔”)
f、 bar()
这里的
bar
Foo
类的一个方法,我们在一个实例上调用它,该实例已分配给变量(name)
f


使方法更酷的是,当调用方法时,实例会自动作为第一个参数传递(
self
),因为它绑定到该实例。

如果我以最简单的方式回答,则属于任何类的函数都称为方法。所以,所有的方法实际上都属于函数。独立的函数称为函数。len()不属于任何类,所以function和choice()属于random类,所以方法。

乔纳森的答案是正确的。但是,我想为python提供一个经验法则——如果函数的第一个参数是“self”,那么它就是一个方法。谢谢您的回答。我很感激。