def memories():
"Load python modules from memory folder"
# Invalidates current cache
importlib.invalidate_caches()
# Path where the modules are stored
memory_path = os.path.join(os.path.dirname(__file__), MEMORY_DIR)
knowledge = list()
# If the folder exists, get the files
if os.path.isdir(memory_path):
memories = os.listdir(memory_path)
else:
logger.warn("%s missing, i'm useless :(" % memory_path)
return knowledge
# For each .py file, get name and load the module
for memory in memories:
if not memory.startswith("__") and memory.endswith(".py"):
pypos = memory.find(".py")
memory_name = memory[:pypos]
try:
memory = importlib.import_module(
"{}.{}.{}".format(__package__, MEMORY_DIR, memory_name))
knowledge.append(importlib.reload(memory))
except Exception as err:
logger.warn("%s is confusing, skipping" % (memory_name))
logger.error("%s: %s" % (memory_name, err))
return knowledge
评论列表
文章目录