我正在尝试在课堂上变得更好。我想将多辆汽车(具有车牌号和时间等属性(用于安全凸轮))添加到列表中。我实际上已经在使用它,但是现在突然不起作用了,我也不知道发生了什么。
class CarID:
def __init__(self, camera, cartime, plate):
self.camera = camera
self.plate = plate
self.cartime = cartime
class Cars:
def __init__(self):
self.cars = []
def addCar(self, car):
self.cars.append(car)
主程序:
def make_lists_cars(data):
car_list = Cars()
with open(data, newline='') as f:
f = f.readlines()
for line in f[2:-2]:
car = line.split("\t")
camera = car[0]
cartime = car[1]
plate = car[2]
car_list.addCar(CarID(camera, cartime, plate))
return car_list
data = 'verkeer.txt'
car_list = make_lists_cars(data)
print(Cars().cars)
这给我一个空白列表。汽车变量看起来都像['1','09:01:53','2-ABC-32 \ n']。我实际上想列出具有属性的汽车。 我几个小时前就开始工作了,但是后来我想添加第二个列表,现在它停止工作了:(。 另外我还必须返回car_list,还是没有必要?
谢谢
答案 0 :(得分:3)
Cars().cars
正在从cars
的新实例访问属性Cars
。您代码的最后一行中的Cars()
刚刚被初始化,并且没有CarId
对象被添加到cars
的{{1}}属性中。而是从Cars()
的返回结果中查找cars
:
make_lists_cars