Ajout de classes à un package

Principes de génie logiciel en Python

Adam Spannbauer

Machine Learning Engineer at Eastman

Programmation orientée objet

Modularité POO

Principes de génie logiciel en Python

Anatomie d'une classe

travail dans work_dir/my_package/my_class.py

# Define a minimal class with an attribute
class MyClass:

"""A minimal example class :param value: value to set as the ``attribute`` attribute :ivar attribute: contains the contents of ``value`` passed in init """
# Method to create a new instance of MyClass def __init__(self, value): # Define attribute with the contents of the value param self.attribute = value
Principes de génie logiciel en Python

Utiliser une classe dans un package

travail dans work_dir/my_package/__init__.py

from .my_class import MyClass

travail dans work_dir/my_script.py

import my_package

# Create instance of MyClass
my_instance = my_package.MyClass(value='class attribute value')

# Print out class attribute value
print(my_instance.attribute)
'class attribute value'
Principes de génie logiciel en Python

La convention self

travail dans work_dir/my_package/my_class.py

# Define a minimal class with an attribute
class MyClass:
    """A minimal example class

    :param value: value to set as the ``attribute`` attribute
    :ivar attribute: contains the contents of ``value`` passed in init
    """

    # Method to create a new instance of MyClass
    def __init__(self, value):
        # Define attribute with the contents of the value param
        self.attribute = value
my_instance = my_package.MyClass(value='class attribute value')
Principes de génie logiciel en Python

Passons à la pratique !

Principes de génie logiciel en Python

Preparing Video For Download...