“Non utilisé à l'importation d'avertissement” et pylint

Donc je suis en train de travailler sur un projet en Python et en essayant de le tenir à des normes pylint et juste en général . Donc, j'ai un fichier source, (Nous allons l'appeler un.py)

#a.py
import loggingsetup

def foo():
   log.info("This is a log message")

Mais, je veux contrôler ce que l'enregistrement ressemble, donc dans loggingsetup j'ai quelque chose comme:

#loggingsetup.py
import logging

logging.root.setLevel(logging.DEBUG)

consoleOut = logging.StreamHandler()
consoleOut.setLevel(logging.INFO)  
consoleOut.setFormatter(logging.Formatter("\t"+logging.BASIC_FORMAT))
logging.root.addHandler(consoleOut)

#etc

Maintenant, cela semble fonctionner très bien. Je suppose que comme une question préalable, je dois vous demander si c'est la bonne façon d'aller à ce sujet, ou si il y a une autre façon de structurer mon code qui serait préférable.

Mais ma principale question est que quand je lance pylint sur un.py j'ai un avertissement comme "non utilisé de l'import - import loggingsetup", puisque je ne suis pas fait appel de méthodes ou de fonctions de loggingsetup.

Je pourrais faire quelque chose comme redéfinir le corps de loggingsetup comme une fonction et de l'appeler, mais il semble stupide et sujette à erreur (j'aurais à vous soucier de l'appeler deux fois si je ne l'importation loggingsetup d'autre part, et si je comprends comment python gère les importations, ce n'est pas un problème avec mon installation actuelle).

Je pourrais évidemment juste dire pylint d'ignorer l'avertissement, mais je pensais que je demande ici d'abord pour s'assurer que ce n'est pas vraiment quelque chose que je dois gérer différemment.

  • L'importation d'un module juste pour ses effets secondaires, on se sent mal pour moi. Il fait l'intention de votre code plus difficile à discerner. Explicite est mieux qu'implicites.
  • C'est juste un avertissement que vous avez oublié quelque chose et/ou peut-être faire quelque chose de superflu. L'ignorer si ce n'est pas le cas.
  • Je me suis en désaccord avec ce qui précède, le sentiment de martineau. Oui, parfois, c'est comment ça se passe, et vous avez d'ignorer les avertissements, mais généralement mises en garde ne devrait pas être traités comme des "rappels amicaux" et ignoré sans en être certains, c'est pourquoi je suis venu à faire certain que je pourrais l'ignorer, ou d'obtenir une meilleure approche.
InformationsquelleAutor Retsam | 2012-08-14