Python can also import only some names from a module:
from module import name, name, name
and can also run a module import under control of a try/except block, so you can trap the ImportError and do something about it. A typical use is to try to import the C version (for performance) of a module, and if that fails, fall back to the pure Python version of the same module; e.g. cElementTree and ElementTree:
If so, I believe imports in Python and Rust work similarly, and, say, JS's 'require' seems to too.