Classes Python

Définition de nouveaux objets en Python à l'aide de classes

En plus d'utiliser les types fournis par Python, nous pouvons déclarer nos propres classes et, à partir de classes, nous pouvons instancier des objets.

Un objet est une instance d'une classe. Une classe est le type d'un objet.

Définissez une classe de cette manière:

class <class_name>:
    # my class

Par exemple, définissons une classe Dog

class Dog:
    # the Dog class

Une classe peut définir des méthodes:

class Dog:
    # the Dog class
    def bark(self):
        print('WOF!')

selfcar l'argument de la méthode pointe vers l'instance d'objet actuelle et doit être spécifié lors de la définition d'une méthode.

Nous créons une instance d'une classe, unobjet, en utilisant cette syntaxe:

roger = Dog()

À présentrogerest un nouvel objet de type Dog.

Si vous courez

print(type(roger))

Tu auras<class '__main__.Dog'>

Un type particulier de méthode,__init__()est appelé constructeur, et nous pouvons l'utiliser pour initialiser une ou plusieurs propriétés lorsque nous créons un nouvel objet à partir de cette classe:

class Dog:
    # the Dog class
    def __init__(self, name, age):
        self.name = name
        self.age = age
<span style="color:#66d9ef">def</span> <span style="color:#a6e22e">bark</span>(self):
    <span style="color:#66d9ef">print</span>(<span style="color:#e6db74">'WOF!'</span>)</code></pre></div>

We use it in this way:

roger = Dog('Roger', 8)
print(roger.name) # 'Roger'
print(roger.age)  # 8

roger.bark() # ‘WOF!’

One important features of classes is inheritance.

We can create an Animal class with a method walk():

class Animal:
    def walk(self):
        print('Walking..')

and the Dog class can inherit from Animal:

class Dog(Animal):
    def bark(self):
        print('WOF!')

Now creating a new object of class Dog will have the walk() method as that’s inherited from Animal:

roger = Dog()
roger.walk() # 'Walking..'
roger.bark() # 'WOF!'

More python tutorials: