Python3 動態匯入模組的兩種方式

2022-07-12 09:33:13 字數 1040 閱讀 9379

動態匯入模組就是只知道str型別的模組名字串,通過這個字串匯入模組

需要匯入的模組:

#!/usr/bin/env python

# _*_ coding:utf-8 _*_

# author:carsonli

class ccc(object):

def __init__(self,name):

self.name=name

目錄結構:

'''python 直譯器內部動態匯入方式'''

module_name='import_lib.metaclass' #模組名的字串

import_lib=__import__(module_name) #這是直譯器自己內部用的

'''import_lib代表的其實是這個模組,而不是下面的metaclass'''

c=import_lib.metaclass.ccc("bert")#呼叫下面的方法

print(c.name) #執行結果:bert

#!/usr/bin/env python

# _*_ coding:utf-8 _*_

# author:carsonli

'''官方建議用這個'''

import importlib

module_name='import_lib.metaclass' #模組名的字串

metaclass=importlib.import_module(module_name) #匯入的就是需要匯入的那個metaclass

c=metaclass.ccc("bert") #呼叫下面的方法

print(c.name) #執行結果:bert

Python3 動態匯入模組的兩種方式

動態匯入模組就是只知道str型別的模組名字串,通過這個字串匯入模組 需要匯入的模組 class ccc object def init self,name self.name name 目錄結構 第一種方式 python直譯器內部使用,不建議用 module name import lib.meta...

python3匯入模組的方法PYTHONPAT

1 相同專案中匯入模組 load news.py from log.global config import 或from global config import 專案結構 表示當前檔案所在的目錄的上一級目錄 表示當前檔案所在的目錄 可以省略 表示當前站點的根目錄 網域名稱對映的硬碟目錄 impor...

Python動態匯入模組

如果匯入的模組不存在,python直譯器會報 importerror 錯誤 import something traceback most recent call last file line 1,in importerror no module named something 有的時候,兩個不同的...