确定可能重复,但如果不能,我如何动态导入模块并使用参数进行实例化?
我在文件food/healthyfood/fruits.py
中有一个类模块:
class Fruit(object):
def __init__(self, kind):
self.kind = kind
现在我需要通过一个字符串动态导入这个类' Fruit'并使用参数实例化它。
位于食品包文件夹中的文件中的静态加载方法:
from food.healthyfood import fruits
fruit = fruits.Fruit('apple')
位于食品包文件夹中的文件中的动态加载方法:
fruitClass = getattr(importlib.import_module("food.healthyfood.fruits"), "Fruit")
fruit_inst = fruitClass('apple')
我收到包找不到错误,我做错了什么?
还有食物& healthyfood是python包文件夹,每个文件夹都有__init__.py
。