文章目录
在Python中,可以通过文件名动态加载同名的类,这通常需要使用importlib模块来实现动态导入。
使用importlib和__import__两种方式加载同名文件类,同时使用flask封装了一个调用执行的框架,通过url请求传递模块名称后执行,后续可以根据需求进行简单的修改后使用。
1 方法一:使用importlib动态导入
假设有一个文件MyModule.py,其中包含一个同名的类MyModule:
1.1 MyModule.py
class MyModule:
def __init__(self):
# 实例化这个类时,会直接打印
print("MyModule loaded!")
1.2 loadModule.py
import importlib
def load_class_from_file(file_name):
# 移除 .py 后缀(如果存在)
module_name = file_name.replace('.py', '')
# 动态导入模块
module = import