1. 基础版本:
属性:
停车场最多停车数; max_car;
当前停车数;cur_car;
当前停车列表; car_list = []
方法:
停车:park()
1). 如果没有达到最多停车数,则允许停车;
2). 如果没有达到最多停车数,则允许停车;
出停车场:exit()
1). 判断该汽车是否进入,如果进入,则删除car_list里面相关的信息;
2). 如果该汽车从未进入, 则通知联系管理员;
2. 升级版本
1). 每辆汽车都有其属性, 包含: 车牌号,车主, 联系方式, 余额, 进入停车场时间, 出停车场时间;
属性:
停车场最多停车数; max_car;
当前停车数;cur_car;
当前停车列表; car_list = []
方法:
停车:park()
1). 如果没有达到最多停车数,则允许停车;
2). 如果没有达到最多停车数,则允许停车;
出停车场:exit()
1). 判断该汽车是否进入,如果进入,则删除car_list里面相关的信息;
2). 如果该汽车从未进入, 则通知联系管理员;
2. 升级版本
1). 每辆汽车都有其属性, 包含: 车牌号,车主, 联系方式, 余额, 进入停车场时间, 出停车场时间;
2). 车主实现刷卡计时收费, 停车收费5元/小时;
class Car(object): def __init__(self,car_number,car_owner,car_address,car_type,car_color,car_money,car_arrtime): self.car_number = car_number self.car_owner = car_owner self.car_address = car_address self.car_type = car_type self.car_color = car_color self.car_arrtime = car_arrtime self.car_money = car_money def __str__(self): print("车牌号:%s\n车主:%s\n联系方法:%s\n车型:%s\n颜色:%s\n进入时间:%s\n" % (self.car_number,car_owner,car_address,car_type,car_color,car_arrtime)) class Park(object): def __init__(self,max_car=200): self.max_car=max_car self.car_list = [] self.cur_car=len(self.car_list) def Menu(self): while True: print("-" * 40) print(" 停车场管理系统 ") print(" 1.停车") print(" 2.取车") print(" 3.显示") print(" 4.退出系统") print('-' * 40) choice = int(input("请选择功能(序号):")) if choice == 1: self.park() elif choice == 2: self.exit() elif choice == 3: self.display() elif choice == 4: print("欢迎下次使用!") exit() else: print("请您输入正确的选择") def park(self): for Car in self.car_list: if Car.car_number == car.car_number: print("车牌号错误,请重新输入") break else: self.car_list.append(car) print("车牌号为%s的车停车成功" %car.car_number) def exit(self): car_num = input('车牌号:') res = self.check(car_num) if res is not None: self.pay(res) self.cars.remove(res) print('成功取车!') else: print('该汽车不存在,请联系管理员!') def display(self): if len(self.car_list)!=0: for car in self.car_list: print(car) else: print("车库为空") par = Park() par.Menu()
目前还不完善,还需要改进