在python中创建随机数量的类对象

时间:2013-08-18 16:38:23

标签: python class loops object

是否有正确的方法来循环for循环并创建多个对象,但不知道它循环了多少时间?根据我研究过的内容,我可以遍历预定字符串列表并从中创建对象,但如果我没有预定的数字来循环,该怎么办呢。

class Item(object):
    def __init__(self, x, y, z):
        self.x
        self.y
        self.z

for x in range(random_number):
    x = Item(1,2,3)

我将如何解决这个问题,并了解创建的第一个和最后一个对象之间的区别?

3 个答案:

答案 0 :(得分:1)

您可以将对象存储在列表中。然后,您可以使用索引来引用第一个和最后一个项目。

items = [Item(1,2,3) for x in range(random_number)]
first = items[0]
last = items[-1]

答案 1 :(得分:0)

你打算怎么处理这些物品?如果您只想使用for循环创建随机数量,请执行您正在执行的操作。但是,在我看来,您希望将它们放在list

mylist = []
for i in range(random_number):
    mylist.append(Item(1,2,3))

或者,您可以使用list comprehension

mylist = [Item(1,2,3) for i in range(random_number)]

答案 2 :(得分:0)

您可以使用数组来跟踪创建的对象

object_list = []
for x in range(random_number):
    object_list.append(Item(1, 2, 3))

创建的第一个对象是object_list[0],最后一个对象是object_list[-1]