mam*_*mcx 7 python inheritance plugins
我有一个插件系统.插件从一个共同的祖先子类...广告看起来像这样:
-- SDK
--- basePlugin.py
-- PLUGINS
--- PluginA
---- Plugin.py
---- Config.ini
--- PluginB
---- Plugin.py
---- Config.ini
Run Code Online (Sandbox Code Playgroud)
我需要阅读Config.inibasePlugin.py中的信息__init__.我在每个插件中执行:
class PluginA(BaseSync):
__init__(self, path):
super(PluginA,self).__init__(self, __file__)
Run Code Online (Sandbox Code Playgroud)
但是想知道是否有可能在父类中知道哪个文件位于子类...
unu*_*tbu 14
假设BaseSync是一个新式类,父类BaseSync可以找到定义PluginA这种方式的文件:
import sys
class BaseSync(object):
def __init__(self):
path=sys.modules[self.__module__].__file__
Run Code Online (Sandbox Code Playgroud)
(所以你不必path明确地传递).
| 归档时间: |
|
| 查看次数: |
1781 次 |
| 最近记录: |