Comment le mauvais est l'occultation de noms définis dans des étendues extérieures?

Je viens de passé à Pycharm et je suis très heureux de tous les avertissements et les conseils qu'il me donne à améliorer mon code. Sauf pour ce qui, je ne comprends pas:

This inspection detects shadowing names defined in outer scopes.

Je sais que c'est une mauvaise pratique pour accéder à une variable à partir de l'extérieur de la portée, mais quel est le problème de l'ombrage à l'extérieur de la portée?

Ici est un exemple, où Pycharm me donne le message d'avertissement:

data = [4, 5, 6]

def print_data(data): # <-- Warning: "Shadows 'data' from outer scope
    print data

print_data(data)
  • Aussi j'ai cherché la chaîne "Cette inspection détecte..." mais rien trouvé dans le pycharm l'aide en ligne: jetbrains.com/pycharm/webhelp/getting-help.html
  • Pour désactiver ce message dans PyCharm: <Ctrl>+<Alt>+s (paramètres), Editeur, les Inspections, l'Occultation des noms à partir des étendues extérieures". Décochez la case.
InformationsquelleAutor Framester | 2013-11-21