Why is "import *" bad?

Software Enthusiastic picture Software Enthusiastic · Mar 5, 2010 · Viewed 55.9k times · Source

It is recommended to not to use import * in Python.

Can anyone please share the reason for that, so that I can avoid it doing next time?

Answer

gruszczy picture gruszczy · Mar 5, 2010
  • Because it puts a lot of stuff into your namespace (might shadow some other object from previous import and you won't know about it).

  • Because you don't know exactly what is imported and can't easily find from which module a certain thing was imported (readability).

  • Because you can't use cool tools like pyflakes to statically detect errors in your code.