一般在引入模块时,都会写成:
import ***
或者from *** import ***
,俗称静态引入。最近学到一个知识点,叫动态引入,应用到的是importlib.import_module,它是直接应用一个字符串引入模块,访问其中的元素或方法。下面上才艺。
假设有一个文件origin.py,代码如下:
elements={'name'='learning',descriptin='difficult'}
想要以字符串的形式,在另一个test.py文件中获取origin.py文件中的elements元素,即可利用动态引入的方式。
import importlib
m = importlib.import_module('origin')
elem = m.elements
print(elem)
效果等同于静态引入方式:
import origin
elem=origin.elements
print(elem)
以上两种方式的运行结果相同。
我暂时还没有发现通过字符串动态引入的方式的优势,最近看的一个框架用到了...特此记录。
自我记录,有错误欢迎指正~
网友评论