我试图构建一个可调整的应用程序,所以我需要一种方法,允许我在不修改主应用程序的情况下创建新模块。为此,我正在准备模块系统,该模块系统允许我从文件夹中导入所有模块,并且我希望通过使用类属性来选择要使用的模块。将所有模块导入到一个文件夹中,并通过它的一个属性使用它们
模块:
topology_O.py
:
class Topology(object):
def __init__(self):
self.name = 'O'
self.version = 0.1
def __str__(self):
string = "Topology: " + self.name
string += "Version: " + str(self.version)
return string
topology_H.py
:
class Topology(object):
def __init__(self):
self.name = 'H'
self.version = 0.1
def __str__(self):
string = "Topology: " + self.name
string += "\n > Version: " + str(self.version)
return string
我想使用它们像这样:
myTopology = some_topology_thing('O')
print myTopology
# Topology: O
# > Version: 0.1
myTopology = some_topology_thing('H')
print myTopology
# Topology: H
# > Version: 0.1
于是冒顿les将被name
选中和使用。
我想你也希望根据导入时需提供模块,以及在'name'属性...只是像'some_topology_thing('O')' - >自动导入topology_O ...? –
@IronFist是的,这就是我需要的 – efirvida
然后我相信迈克米勒的一个将是我将发布.. :) –