importlib 模塊導入


 

#1、動態導入模塊
script_name = scripts.utils
module = importlib.import_module(script_name)    # 動態導入相應模塊

#2、模塊引入檢查
import importlib.util
import importlib

def check_module(module_name):
    '''
    檢查module_name模塊是否存在
    '''
    module_spec = importlib.util.find_spec(module_name)
    if module_spec is None:
        print("Module :{} not found".format(module_name))
        return None
    else:
        print("Module:{} can be imported!".format(module_name))
        return module_spec

def import_module_from_spec(module_spec):
    '''
    動態導入模塊
    '''
    module = importlib.util.module_from_spec(module_spec)
    module_spec.loader.exec_module(module)
    # module = importlib.import_module(script_name)
    return module

if __name__ == "__main__":
    module_spec = check_module("fake_module")
    module_spec = check_module("collections")
    if (module_spec):
        module = import_module_from_spec(module_spec)
        print(dir(module))

參考:https://blog.csdn.net/xc_zhou/article/details/80921546

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM