Ajout de fonctionnalités aux packages

Principes d’ingénierie logicielle en Python

Adam Spannbauer

Machine Learning Engineer at Eastman

Structure du package

Structure du package

Principes d’ingénierie logicielle en Python

Ajout de fonctionnalités

travail dans work_dir/my_package/utils.py

def we_need_to_talk(break_up=False):
    """Aide pour communiquer avec un partenaire"""
    if break_up:
        print("Ce n'est pas toi, c'est moi...")
    else:
        print('Je <3 U!')

travail dans work_dir/my_script.py

# Importer le sous-module utils
import my_package.utils

# Décider de voir d'autres personnes
my_package.utils.we_need_to_talk(break_up=True)
Ce n'est pas toi, c'est moi...
Principes d’ingénierie logicielle en Python

Importer des fonctionnalités avec __init__.py

travail dans work_dir/my_package/__init__.py

from .utils import we_need_to_talk

travail dans work_dir/my_script.py

# Importer le package personnalisé
import my_package

# Réaliser que vous êtes avec votre âme sœur
my_package.we_need_to_talk(break_up=False)
Je <3 U!
Principes d’ingénierie logicielle en Python

Extension de la structure du package

Structure de package étendue

Principes d’ingénierie logicielle en Python

Extension de la structure du package

Structure du sous-package

Principes d’ingénierie logicielle en Python

Passons à la pratique !

Principes d’ingénierie logicielle en Python

Preparing Video For Download...