Python-调用函数

时间:2016-10-28 17:47:40

标签: python function

我提前道歉,这是一个非常愚蠢的问题。出于好奇,(例如)函数(a)和a.function()之间有什么区别?谢谢你的回答。

2 个答案:

答案 0 :(得分:1)

class Example():
    def __init__(self):
        self.x = 1

    def change_x(self):
        self.x = 5
        print(self.x)

def example_function(x):
    print(x)

a= Example()
a.change_x()  #calling the object function of 

example_function("hello")  #calling the function in scope

#prints >> 5
#       >> hello

当你something.function()调用该对象的函数时。

当您function()时,您正在调用命名空间中定义的范围内的函数。

答案 1 :(得分:1)

function(a)a.function()之间的差异是函数和方法之间的差异。函数称为function(a),不会在变量上调用。 a.function()实际上是一个方法,并在实例变量上调用。调用a.function()时,无论类a是什么,都有一个可以在该变量上调用的方法function()。然而,当调用function(a)时,将使用a作为参数调用函数。一个例子是

' '.join(['a','b','c'])

在字符串join上调用方法' '(因为join是属于str类的方法)并采用参数['a', 'b', 'c']