Чет мне кажеться что это нетривиальная задача. Вы должны написать чтото типа API. тоесть заранее определить какие у вас бцдци плагины, какиеметоды будут им доступны, а так же саму структуру плагина.
Потом, создать например абстрактный класс с абстракными же методами, На их основе писать плагины подгружать их и уже оотуда дергать методы/атрибута класса
например , есть файл назовем его MyAPI.py
class MyPlugin (object):
def run (self):
pass
потом вы создаете на его основе свой плагин
import MyAPI
class testPlugin (MyAPI.MyPlugin):
def __init__(self):
pass
def run (self):
print(" Hello word!")
А в основном модуле пишете лоадер котороый ищет в указаной заранее папке файлы, импортирует их. читает перечень атрибутов. Проверяет плагин это или нет ( например проверяет чтобы он был наследником MyPlugin) и если да то создает инстанс класса и запукает instance.run().
Это кагбе самый простой интерфейс.