使用我的程序的用户如何创建一个类?例如,我默认在程序中有这个类:
class OpticalDevices:
def __init__(self,nofarticle='-',model='-')
self.nofarticle=nofarticle
self.model=model
现在用户想要添加一些其他类,他不想在OpticalDevices中添加任何内容,他想在其他类中添加一个例如RamMemory。这个课程不存在,所以他需要创建它。直到此时才知道类的名称,因此我无法直接在代码中创建类。他输入了他想要的属性,结果是:
RamMemory类
nofarticle =' - '
模型=' - '
速度=' - '
容量=' - '
我如何从这5个字符串中创建它并让它保留在代码中,或者如果它保存在文件中以从文件中加载这5个字符并创建类:
class RamMemory:
def __init__(self,nofarticle='-',ram_type='-',model='-',speed='-',capacity='-'):
self.nofarticle=nofarticle
self.ram_type=ram_type
self.model=model
self.capacity=capacity
self.speed=speed
如何从字符串创建类的实例?例如:
s="opticaldevice1"
现在我要创建它:
opticaldevice1=OpticalDevices()
答案 0 :(得分:1)
类似这样的事情
type('RamMemory',() /*Object is base class*/, {nofarticle='-', ram_type='-',.. })
见 https://docs.python.org/3/library/types.html 和 http://www.jeffknupp.com/blog/2013/12/28/improve-your-python-metaclasses-and-dynamic-classes-with-type/