案例分析助理解   if __name__ == '__main__':

if __name__ == 是否等於'__main__'  是決定自己運行還是以模塊形式被載入


如果 import 一個模塊,那麼模塊__name__ 的值通常爲模塊文件名,不帶路徑或者文件擴展名。但是您也可以像一個標準的程序樣直接運行模塊,在這 種情況下, __name__ 的值將是一個特別缺省"__main__"。(注意理解)


案例描述    現有一個python程序名稱爲name.py和一個name1.py(注意兩個文件名字,文件裏面會用到)name.py  如下:

def test1():                                   ## 定義
   print "test1 is running"
#print __name__                          ##如果你想看一下__name__的值是不是main 可以打開註釋看一下
test_2():
   print"test2"
if __name__=="__main__":

#  test()
   print "test main is working"
if __name__=="name":                  ## 這名字是自己 name.py的,不帶路徑或者文件擴展名;目的是讓大家知道在他等於main,是調用本身,不等於的時候是被調用
   print "name is diaoyong"
   test_2()


name1.py  如下:

import name                                ##name.py     調用的模塊
t=name
#t.test1()
#print t.__name__                        ## 在這裏被調用時候 t.name 值是多少   是被調用的模塊名;可以去掉註釋查看,之所以有了這個   第一個python文件中的  if __name__=="name":    才被執行 否則等於其他將不執行此句

if __name__=="__main__":       ## 每個 python都有一個自己的___name___並且值都是main
   print "name1 de manin"
   print __name__
quit()





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