-
Notifications
You must be signed in to change notification settings - Fork 209
Python __main__ notes
Alex Willmer edited this page Jun 9, 2026
·
2 revisions
#!/usr/bin/env python
if __name__ == '__main__':
print(f'{dir()=}')
print(f'{__doc__=}')
print(f'{__file__=}')
print(f'{__loader__=}')
print(f'{__name__=}')
print(f'{__package__=}')
print(f'{__spec__=}')➜ mitogen git:(issue1529) ✗ python3 < main_inspect.py
dir()=['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__']
__doc__=None
__file__='<stdin>'
__loader__=<class '_frozen_importlib.BuiltinImporter'>
__name__='__main__'
__package__=None
__spec__=None➜ mitogen git:(issue1529) ✗ python3 main_inspect.py
dir()=['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__']
__doc__=None
__file__='/Users/alex/src/mitogen/main_inspect.py'
__loader__=<_frozen_importlib_external.SourceFileLoader object at 0x100614ca0>
__name__='__main__'
__package__=None
__spec__=None➜ mitogen git:(issue1529) ✗ python3 -m main_inspect
dir()=['__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__']
__doc__=None
__file__='/Users/alex/src/mitogen/main_inspect.py'
__loader__=<_frozen_importlib_external.SourceFileLoader object at 0x102898be0>
__name__='__main__'
__package__=''
__spec__=ModuleSpec(name='main_inspect', loader=<_frozen_importlib_external.SourceFileLoader object at 0x102898be0>, origin='/Users/alex/src/mitogen/main_inspect.py')