2018.9.23 if __name__ == '__main__': 用法

本質:name 是當前模塊名,當模塊被直接運行時模塊名爲 main 。這句話的意思就是,當模塊被直接運行時,以下代碼塊將被運行,當模塊是被導入時,代碼塊不被運行。

 

 

 

if __name__ == '__main__':              # 注意 這裏是兩個_

這段代碼的功能理解如下:

 

一個python的文件有兩種使用的方法--->

 

作用一,直接作爲腳本執行。

 

作用二,import到其他的python腳本中被調用(模塊重用)執行。

 

  舉個例子,下面在test.py中寫入如下代碼:

print "I'm the first."

if __name__=="__main__":  

print "I'm the second."

執行test.py 可以成功print兩行字符串:

I'm the first.

I'm the second.

 

然後在同一文件夾新建名稱爲import_test.py的腳本,只輸入如代碼:

import test

執行import_test.py腳本,輸出結果如下:

I'm the first.

 

只輸出了第一行字符串。

即,if __name__=="__main__": 之前的語句被執行,之後的沒有被執行。

 

if __name__ == '__main__' : 的作用就是控制這兩種情況執行代碼的過程,在if __name__ == '__main__': 下的代碼只有在第一種情況下(即文件作爲腳本直接執行)纔會被執行,而import到其他腳本中是不會被執行的。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章