📜  Python中的实例方法

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

Python中的实例方法

类是用户定义的蓝图或原型,从中创建对象。类提供了一种将数据和功能捆绑在一起的方法。创建一个新类会创建一种新类型的对象,允许创建该类型的新实例。每个类实例都可以附加属性以维护其状态。类实例也可以具有用于修改其状态的方法(由其类定义)。

例子:

# Python program to demonstrate
# classes  
  
  
class Person:  
      
    # init method or constructor   
    def __init__(self, name):  
        self.name = name  
      
    # Sample Method   
    def say_hi(self):  
        print('Hello, my name is', self.name)  
      
p = Person('Nikhil')  
p.say_hi() 

输出:

Hello, my name is Nikhil

注意:有关详细信息,请参阅Python类和对象

实例方法

实例属性是那些不被对象共享的属性。每个对象都有自己的实例属性副本。

例如,考虑一个具有许多对象(如圆形、正方形、三角形等)的形状类,这些对象具有自己的属性和方法。实例属性是指该特定对象的属性,例如三角形的边为 3,而正方形的边可以为 4。

实例方法可以访问甚至修改实例属性的值。它有一个默认参数:-

  • self –它是一个关键字,指向当前传递的实例。但是不需要每次调用实例方法时都传递。

例子:

# Python program to demonstrate
# instance methods
  
  
class shape:
      
    # Calling Constructor
    def __init__(self, edge, color):
        self.edge = edge
        self.color = color
          
    # Instance Method
    def finEdges(self):
        return self.edge
          
    # Instance Method
    def modifyEdges(self, newedge):
        self.edge = newedge
          
# Driver Code
circle = shape(0, 'red')
square = shape(4, 'blue')
  
# Calling Instance Method
print("No. of edges for circle: "+ str(circle.finEdges()))
  
# Calling Instance Method
square.modifyEdges(6)
  
print("No. of edges for square: "+ str(square.finEdges()))

输出

No. of edges for circle: 0
No. of edges for square: 6