In Python 3, modules can be namespace modules without an __init__.py (as per PEP 420) or as a regular module (i.e. '[modules] packages as they are implemented in Python 3.2 and earlier' - PEP 420) that have an __init__.py or are a single .py file.
How can you tell the difference between a namespace module and an 'ordinary' module?
(I am using Python 3.5.3)
e.g.
Namespace module named mod prints out as:
(Pdb) mod
<module 'mymodule' (namespace)>
and ordinary modules print out as:
(Pdb) mod
<module 'mymodule' from '/path/to/mymodule/__init__.py'>