What Does if __name__ == “__main__”: Do in Python?
Introduction
It’s common to see if __name__ == "__main__"
in Python scripts we find online, or one of the many we write ourselves.
Why do we use that if-statement when running our Python programs? In this article, we explain the mechanics behind its usage, the advantages, and where it can be used.
The __name__ Attribute and the __main__ Scope
The __name__
attribute comes by default as one of the names in the current local scope. The Python interpreter automatically adds this value when we are running a Python script or importing our code as a module.
Try out the following command on your Python interpreter. You may find out that __name__
belongs to the list of attributes in dir()
:
dir()
The __name__
in Python is a special variable that defines the name of the class or the current module or the