【发布时间】:2018-04-10 21:26:29
【问题描述】:
问:是否可以在 for 循环中自动创建实例:
Main.py:
from Car import Car
car_list = [
['red', 555, 123.04],
['black', 666, 203.04],
['green', 111, 23.04],
]
cars = Car()
new_car_list = []
for line in car_list:
new_car_list.append(cars.foo(line))
Car.py
class Car:
def __init__(self):
self.number = int()
self.color = str()
self.price = float()
def foo(self, line):
for attribute in line:
if isinstance(attribute,int):
self.number = attribute
elif isinstance(attribute, str):
self.color = attribute
elif isinstance(attribute, float):
self.price = attribute
return self
输出:
for car in new_car_list:
print(car.number)
111
111
111
如您所见,我有一个具有一些属性的 Car 类。 在我的主文件中,我有一张卡片列表。 我的目标是: 1)能够为每辆汽车创建一个实例,并将其附加到一个包含dict的新列表中,hey key是程序生成的id号,value是汽车的实例。 最后,我希望能够使用字典的键访问实例属性。
有可能吗?
谢谢!
【问题讨论】:
标签: python python-3.x oop instance