I'm using CPython 3.6.2, when executing print(dir()) I get:
['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__']
The dir built-in function for example is inside __builtins__, so if only the modules above are shown for print(dir()), I was thinking that to do so python should've done something like:
import __builtins__
from __builtins__ import *
But if that was true I was able to see using print(dir()) the __builtins__ module + dir and other built functions.
So my question is how can I see the pre-loaded modules(using dir()), but not the built-in functions even though I can access them directly(without using __builtins__.dir for example).