if __name__ main
General Information
Many python source files will have an interesting if statement around main(). This is why it exists.
Checklist
- Python versions: 2 and 3
The Code
if __name__ == '__main__': main()
Explanation
It may include other statements as well.
This special if statement is checked by the python interpreter itself when it reads the source file.
- If the source is being run as the main program, it sets that source file as the special “name” variable to “main”.
- If the source file is being imported from another module, the “name” variable will be set to the module's name instead.
The entire reason behind this is:
- Sometimes modules are written to be executed directly.
- They could also be imported for use in another module.
- The main check allows for only the “main” code to execute if run directly and not if someone imports the module to call functions.