Dites que j'ai un paquet "colorExtentions" et dans mon __init__.py
j'ai __all__=["red", "blue"]
. Ce paquet devrait pouvoir être étendu automatiquement en ajoutant des modules au répertoire et à la liste __all__
. Est-ce que ce qui suit est acceptable ou existe-t-il une autre «meilleure pratique» pour ce genre de choses?python liste tous les modules importés importés via *, la façon pythonique
import colorExtentions
from colorExtentions import *
for moduleName in colorExtentions.__all__:
colors.append(moduleName)
promptUserToChoose(colors)
Que sont exactement «rouge» et «bleu» ici? Des classes? Modules? –
ce sont des modules mais j'appelle explicitement la classe dans mon '__init __. Py' avec' from red import Red'. – Psyclops
automatiquement et ajouter manuellement dans __all__, ressemble à une blague. – Denis