Je travaille sur un grand programme Python qui utilise une multitude de modules en fonction des options de la ligne de commande, en particulier, numpy
. Nous avons récemment trouvé un besoin de l'exécuter sur un petit module intégré qui empêche l'utilisation de numpy. De notre point de vue, c'est assez facile (n'utilisez pas les options de ligne de commande problématiques.)PEP 8 et importation différée
Cependant, en suivant PEP 8, notre import numpy
est au début de chaque module qui pourrait en avoir besoin, et le programme se bloque en raison à numpy
n'étant pas installé. La solution directe consiste à déplacer import numpy
du début du fichier vers les fonctions qui en ont besoin. La question est: «À quel point cela est-il mauvais?
(Une autre solution consiste à envelopper import numpy
dans un try .. except
. Est-ce mieux?)
Puisqu'il s'agit d'une opinion, j'opterais pour 'essayer ... sauf' où j'utilise le module optionnel. Cela serait utile si vous enveloppez les informations sur le cas d'utilisation du module optionnel i.e 'numpy' dans votre cas. – sagarchalise