天天看點

Python3中if __name__ == '__main__'深度解析Python中__name__ 的使用:Python中執行if __name__ == '__main__':執行個體

Python中__name__ 的使用:

__name__ 是一個系統變量(前後加了雙下劃線為系統變量,普通變量不能如此命名)

1、如果目前子產品為主子產品(即調用其他子產品的子產品),那麼此子產品名字即為'__main__'

2、如果目前子產品被import,那麼此子產品名字即為檔案名字(不加後邊的.py)

Python中執行if __name__ == '__main__':執行個體

#tst1.py

print("tst1 name:", __name__)

if __name__ == '__main__':
	print('tst1 run as main!')
           
#tst2.py

import tst1

print('tst2 name:', __name__)
tst1
print('tst2 run as main!')
           

1、執行tst1.py結果

tst1 name: __main__
tst1 run as main!
[Finished in 0.0s]
           

直接作為腳本執行,__name__即為'__main__'

2、執行tst2.py結果

tst1 name: tst1
tst2 name: __main__
tst2 run as main!
[Finished in 0.0s]
           

tst1被作為子產品import,此時tst1.py中__name__即為'tst1',tst2中__name__即為'__main__'