[英]Creating a list of objects from a list of lists
我刚刚开始学习Python。 我有一个列表列表,其中每个元素都是一个列表,看起来像这样:['1','2','3']。 我创建了一个像这样的类:
class Car(object):
def __init__(self, a, b=0, c=0):
self.a = a
self.b = b
self.c = c
def setABC(self, a, b, c):
self.a = a
self.b = b
self.c = c
如何创建一个新列表,其中每个元素都是此类的实例,而不是原始列表成员?
我已经尝试过类似的方法,但是显然没有用:
cars = cars.append(Car(cars[0], cars[1], cars[2]))
另外,我尝试了这个:
cars = [Car(x.a, x.b, x.c) for x in cars]
您应该解压缩嵌套列表以创建类对象。 您可以使用以下列表Car
来创建Car
对象的列表 :
cars = [Car(*props) for props in properties_list]
其中properties_list
是包含您要用来创建汽车的属性的列表。
例如,如果properties_list
类似于:
properties_list = [[1, 2, 3], [4, 5, 6]]
然后cars
将Car
对象的列表保存为:
cars = [
Car(a=1, b=2, c=3),
Car(a=4, b=5, c=6)
]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.