When you import a package, only the top level of it is imported(its __init__.py).So in general case, you won't be able to say import package and use the package.module module inside it.Also, if you import package.module, you won't be able to use the stuff from the package namespace.

os and os.path are a bit of a special case.It lookes like os is a package, and os.path is a module within it.

But that's not the case.os actually just does some magic that makes it seem like os.path is a part of it.It's actually a platform-specific module that gets imported inside os, and magic-ed the shit out of.

Whether you import os or os.path, both will be available to you.

However, I would recommend using import os if you're using stuff from the os namespace, and import os.path if you're using stuff from os.path namespace.You know - explicitness, clarity and stuff like that.

Yes, but don't forget that manual is on your PC as well if you installed python in a normal way. You'll also find the interactive PYDOC system in the python menu. You can ALSO just use the built-in help, e.g.: