\quad 我们举例来说明一下,现在分别有如下两段用于打印名字代码:
在test1.py文件中,我们直接打印
def print_hello_world(): # 该 py文件 除了打印名字之外的其他代码
print('hello world')
print('my name is xxx')
在test2.py文件中,我们将其定义在 main 函数里
def print_hello_world(): # 该 py文件 除了打印名字之外的其他代码
print('hello world')
def main():
print('my name is xxx')
if __name__ == '__main__'
main()
我们分别执行两个 py 得到的结果是相同的,即:
my name is xxx
- - - - - - - - – - - - - - - - 分割线 - - - - - - - - - - - - - - - - - -
我们做一个小小的测试,现在需要调用print_hello_world函数,而不是打印名字。
如果我们 import test1.py,然后调用 print_hello_world,最后得到的结果为:
my name is xxx
hello world
那么,如果我们 import test2.py,然后调用 print_hello_world,最后得到的结果为:
hello world
从上面两个结果我们可以看出来,我们直接将代码写在函数体外面,当该文件被别的程序 import 时,代码都会先执行一遍。这或许就是 main 函数存在的意义,当该文件被别的程序 import 时,main 中的代码不会被执行。以上,鄙人浅见,还望指教。