unused import statement ... is wrong?

  • 2
  • 5

Sometimes PyCharm 3.0.1 marks an import statement (like 'import os') as unused, but if I comment it out, the program doesn't run, saying 'NameError: name 'os' is not defined'.

What might be happening?
Question is not answered.
Please, specify the case of using import.
Also you can suppress inspection: use "Alt+Enter" and go to Optimize import -> suppress for statement (take a look at web-help http://www.jetbrains.com/pycharm/webhelp/suppressing-inspections.html)

Ok, I've narrowed it down; it's something to do with a namespace collision, but it really shouldn't have this problem anyway, I think.

It's very common to do "from pylab import *" – I know that's Bad, but the thing is, this has never caused issues until PyCharm 3.0.1 for me. (And http://wiki.scipy.org/PyLab claims that this is the CORRECT way to import pylab.)

Here's a minimal program that shows the problem:


import os
from pylab import *
os.makedirs('foo')


For that code, pycharm claims that "import os" is unused, but if you comment it out, os is not defined.