天天看點

Python導入子產品

在廖雪峰的官方網站學習Python2.7(雖然落後了,但是公司的項目還在使用這個版本)。在導入模闆的知識中,不了解 if __name=='__main__' 的寫法。

摘自的代碼:https://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb493182103fac9270762a000/0013868200196665403ac40fac14536939dd5af20810782000

#!/usr/bin/env python
# -*- coding: utf-8 -*-

' a test module '

__author__ = 'Michael Liao'

import sys

def test():
    args = sys.argv
    if len(args)==1:
        print 'Hello, world!'
    elif len(args)==2:
        print 'Hello, %s!' % args[1]
    else:
        print 'Too many arguments!'

if __name__=='__main__':
    test()
           

手動嘗試運作代碼,輸出如下:

Python導入子產品

如果在Python環境中導入該子產品,輸出如下:

Python導入子產品

如果把源代碼中的 if __name__=='__main__'注釋掉

Python導入子產品

在Python環境中導入該子產品,直接就輸出了,輸出如下:

Python導入子產品

是以,此行代碼  if __name__=='__main__'  的意思是,判斷此函數是否有主函數,如果不是則不會直接執行。要在被導入之後,調用的時候才會被執行。

小插曲:要在項目的路徑下進入python環境,才能正常執行程式。