这是我的密码:
while True:
print(vehiclelist)
reg = input('Enter registration number of vehicle: ')
if reg in vehiclelist:
break
else:
print("Invalid")
但它一直显示其无效,这是输出:
[Car('SJV1883R', 'Honda', 'Civic', 60.00), Car('SJZ2987A', 'Toyota', 'Altis', 60.00), Car('SKA4370H', 'Honda', 'Accord', 80.00), Car('SKD8024M', 'Toyota', 'Camry', 80.00), Car('SKH5922D', 'BMW', '320i', 90.00), Car('SKM5139C', 'BMW', '520i', 100.00), Car('SKP8899H', 'Mercedes', 'S500', 300.00), Truck('GB3221K', 'Tata', 'Magic', 200.00), Truck('YB8283M', 'Isuzu', 'NPR', 250.00), Truck('YK5133H', 'Isuzu', 'NQR', 300.00)]
Enter registration number of vehicle: SJZ2987A
Invalid
你知道我怎么检查输入吗?你知道吗
这是我的车辆等级:
class Vehicle():
def __init__(self, regNo, make, model, dailyRate, available):
self.regNo = regNo
self.make = make
self.model = model
self.dailyRate = dailyRate
self.available = available
@property
def dailyRate(self):
return self.__dailyRate
@dailyRate.setter
def dailyRate(self, dailyRate):
if dailyRate < 0:
self.__dailyRate = 0
else:
self.__dailyRate = dailyRate
def __repr__(self):
return "Vehicle('{:s}', '{:s}', '{:s}', {:.2f}, '{:s}')".format(self.regNo, self.make, self.model, self.dailyRate, self.available)
您需要迭代各个car对象并比较
regNo
这里的问题是
vehicle_list
是一个车辆对象列表,您不能直接在车辆对象列表中搜索注册号。你知道吗更好的设计模式是使用字典,其中
regNo
将显示为key,vehicle对象将显示为value。你知道吗您可以按以下方式更改代码:
相关问题 更多 >
编程相关推荐