如何在循环中更改类对象名称

时间:2016-11-19 21:14:43

标签: class python-3.x object

所以我有班级

class MyClass
....do things...

我用

添加对象
ObjName = MyClass(things)

我的问题是,当我在一个循环中将ObjName添加到MyClass时,我无法找到一种方法来为每个循环创建一个新的对象名称,因此它会覆盖唯一最终创建的Obj。我尝试添加一个列表,如

ObjName[i] = MyClass(things)

但它不起作用。

以下是我正在努力做的事情(为清晰起见而编辑):

因此,当我向MyClass添加对象时,添加的对象的名称应该可以通过输入调用,如下所示:

somename = input("objname: ")  # User input decides how the object values can be called
TempObjName = MyClass(things) # Values of the specific object, will contain more than one unique object
*...*
somename.someattribute() ## 2 different
somename2.someattribute() ## values, sets or etc 

2 个答案:

答案 0 :(得分:1)

试试这个:

ObjList = []
for i in whatever:
     temp = MyClass(things)
     ObjList.extend(temp)

答案 1 :(得分:0)

我无法创建我想说的功能,但是因为我的代码有一个字典保存了obj名称和obj值,我能够做到我最初想要做的事情从类中的字典中重新运行请求的名称。