我想一次创建多个具有不同名称的对象。
例如
class Car:
def __init__(self, color):
self.color = color
我需要在程序首次运行时创建n个对象
car_1 = Car("blue")
car_2 = Car("Red")
#...
car_n = Car("color_n")
有没有办法在python3中执行此操作?我尝试过的所有事情只是创建一个对象并更改其名称或过度使用对象信息o在运行时失败。我不能使用exec()或eval()
由于
额外: 我之前需要这个东西,因为每当我运行程序来处理它时,我都需要存储n个客户端的信息(该信息存储在.csv文件中)。 我是否需要做我之前提到的事情,还是有其他方法来处理这种数据管理?
答案 0 :(得分:0)
您可以按列表理解
创建Cars对象列表class Car:
def __init__(self, color):
self.color = color
def __repr__(self):
return '{}({!r})'.format(self.__class__.__name__, self.color)
colors=['red', 'blue', 'green',]
cars_objects = [Car(color) for color in colors]
print(cars_objects)
返回
[Car('red'), Car('blue'), Car('green')]
Car Class中的 __repr__
函数创建了一个更具可读性的&#34; (和可解析的)Car对象的表示,而不是&#34; <__main__.Car object at 0x7f5b38a2c400>
&#34;