Exercices Fonctions & Modules Importer dynamiquement
🎉

Bravo!

Intermédiaire 🧠 Fondamentaux 20 XP 0 personnes ont réussi

Importer dynamiquement

Parfois, tu ne sais pas a l'avance quel module tu veux importer. Le nom du module peut venir d'un fichier de configuration ou d'un choix de l'utilisateur. Dans ces cas, tu ne peux pas écrire import math en dur dans ton code.

Python fournit la fonction importlib.import_module() qui permet d'importer un module a partir de son nom sous forme de chaine de caracteres.

Par exemple :
import importlib
mod = importlib.import_module('math')
mod.sqrt(16) renvoie 4.0

Écris une fonction charger_et_appeler(nom_module, nom_fonction, *args) qui importe dynamiquement un module, récupère une fonction dedans, et l'appelle avec les arguments fournis.

Exemple :
charger_et_appeler('math', 'sqrt', 16) renvoie 4.0
charger_et_appeler('math', 'pow', 2, 3) renvoie 8.0

Tests (3/4)

math.sqrt
assert charger_et_appeler('math', 'sqrt', 16) == 4.0
math.pow
assert charger_et_appeler('math', 'pow', 2, 3) == 8.0
math.floor
assert charger_et_appeler('math', 'floor', 3.7) == 3

+ 0 tests cachés

Indices (3 disponibles)

solution.py