📜  绑定方法Python

📅  最后修改于: 2022-05-13 01:54:39.395000             🧑  作者: Mango

绑定方法Python

绑定方法是依赖于类的实例作为第一个参数的方法。它将实例作为第一个参数传递,用于访问变量和函数。在Python 3 和更新版本的Python中,类中的所有函数都是默认绑定的方法。

让我们通过一个例子来理解这个概念:

# Python code to demonstrate
# use of bound methods
  
class A:
  
    def func(self, arg):
        self.arg = arg
        print("Value of arg = ", arg)
  
  
# Creating an instance
obj = A()  
  
# bound method
print(obj.func)

输出:

< bound method A.func of <__main__.A object at 0x7fb81c5a09e8>>

这里,

obj.func(arg) is translated by python as A.func(obj, arg).

实例obj自动作为第一个参数传递给调用的函数,因此函数的第一个参数将用于访问对象的变量/函数。

让我们看另一个 Bound 方法的例子。

# Python code to demonstrate
# use of bound methods
  
  
class Car:
    # Car class created
    gears = 5
  
    # a class method to change the number of gears 
    @classmethod
    def change_gears(cls, gears):
        cls.gears = gears
  
  
# instance of class Car created
Car1 = Car()
  
  
print("Car1 gears before calling change_gears() = ", Car1.gears)
Car1.change_gears(6) 
print("Gears after calling change_gears() = ", Car1.gears)
  
# bound method
print(Car1.change_gears)

输出:

Car1 gears before calling change_gears() =  5
Gears after calling change_gears() =  6
>

上面的代码是一个类方法的例子。类方法类似于绑定方法,只是实例的类作为参数而不是实例本身传递。在上面的示例中,当我们调用Car1.change_gears(6)时,“Car”类作为第一个参数传递。