Home > Article > Backend Development > How to use the main method in Python
if name == "main": It can be regarded as the entrance of the python program, just like the main() method in java, but it is not completely correct.
In fact, the python program is run line by line from top to bottom. In the .py file, except for the functions defined after def, the code will be considered as the content in the "main" method and executed from top to bottom. . If you just want to write a great "hello world" and don't want to write a function, you can just print(‘hello world’). This is a "program" and does not require the so-called "main" method entry. Of course, if you are testing the function function, you need to write if name == "main" in the .py file and then call the function.
For example, the following hello.py file:
print("first") def sayHello(): str = "hello" print(str); print(__name__+'from hello.sayhello()') if __name__ == "__main__": print ('This is main of module "hello.py"') sayHello() print(__name__+'from hello.main')
Running results:
first This is main of module "hello.py" hello __main__ from hello.sayhello() __main__ from hello.main
Do you understand what I mean? Execute the first line of print first and then execute the things in the "entry"
Speaking of which, what does the sentence if name == "main" mean?
name__ is actually a built-in attribute that indicates the method of calling the current py file. When the above example is run, no matter where the __name__ attribute is in the entire program, the value is __main. When this hello.py file is imported as a module into another .py file (i.e. import), such as world .py, and you are running world.py, then the __name__ attribute in hello.py will become hello. The so-called entrance will not be executed because the if judgment fails.
So the if statement It is judged that a main() method is successfully virtualized.
As mentioned, phthon is executed line by line, so when it reads import hello, it will also execute hello.py. For example, run the following world.py file:
import hello#上一个例子的hello.py if __name__ == "__main__": print ('This is main of module "world.py"') hello.sayHello() print(__name__)
Execution results:
first This is main of module "world.py" hello hellofrom hello.sayhello() main
You can see that the first line of print(‘first’) in hello.py is executed directly, and the __name__ in hello.py also outputs hello, and the name in world.py The output is __main__
The above is the detailed content of How to use the main method in Python. For more information, please follow other related articles on the PHP Chinese website!