我想写一个函数来创建一个类的多个实例,但是我遇到了一些问题。我想做的是这样:class MyClass:
def __init__(self):
self.x = 0
self.y = 1
for i in range(10):
exec ("obj{} = MyClass()".format(i))
通过循环,我可以创建类的多个实例,因此当我调用Python Shell obj1时,它会返回如下内容:
^{pr2}$
这意味着obj0,obj1,obj2创建成功,这太棒了,但是我想回复相同的进程,但是要使用一个可以接收(n)个循环重复次数的函数。在class MyClass:
def __init__(self):
self.x = 0
self.y = 1
def function_create_multiple_instances(n):
for i in range(n):
exec ("obj{} = MyClass()".format(i))
print(i)
function_create_multiple_instances(10)
当我尝试pythonshell时,这意味着对象不是被创建的>>> obj1
Traceback (most recent call last):
File "", line 1, in
NameError: name 'obj1' is not defined
>>> obj2
Traceback (most recent call last):
File "", line 1, in
NameError: name 'obj2' is not defined
>>>
所以我不知道发生了什么,所以如果有人能帮助我,我会非常感激的。在