模組手動執行和模組匯入執行
阿新 • • 發佈:2018-11-10
本章內容:
1、手動執行模組中的if __name__=="__main__"
2、將檔案整體匯入到另一個模組中使用
1、手動執行
新建一個檔案叫process_Pool.py,然後手動執行
1 #手動執行時,__name__ 等於__main__的,所以會執行測試程式碼 2 3 import multiprocessing 4 import time,threading 5 6 def thread_run(): 7 print(threading.get_ident()) 8 9 def run(name):10 time.sleep(2) 11 print('hello',name) 12 t = threading.Thread(target=thread_run,) 13 t.start() 14 15 print(__name__) #列印當前的檔名等於 __main__ 16 17 if __name__=="__main__": #手動執行時,成立,所有執行 18 for i in range(10): 19 p = multiprocessing.Process(target=run,args=('boy%s'%i,))20 p.start() 21 p.join()
2、將檔案整體匯入到另一個模組中使用
新建一個檔案modle_poo.py,將process_Pool.py匯入執行。由於__name__等於模組名process_Pool,所有if__name__=="__main__" 不成立
1 import sys,os 2 BASE_DIR = os.path.normpath(os.path.join( 3 os.path.abspath(__file__), 4 os.path.pardir 5 )) 6 sys.path.insert(0,BASE_DIR)7 # print(BASE_DIR) 8 # print(sys.path) 9 10 11 import process_Pool 12 13 #執行結果是 process_Pool #等於模組名,所有不執行if__name__=="__main__"