Python中的停车系统设计程序

Python中的停车系统设计程序

假设你想设计一个停车系统。一个停车场有三种不同的停车位——大型、中型和小型。而且每种大小的停车位都有固定数量的槽位。创建一个名为OurParkingSystem的类,其中包含两个方法−

  • 构造函数(big, medium, small) − 这个构造器接收不同空间的可用槽位数量,并初始化OurParkingSystem类的对象。

  • addCar(carType) − 此方法检查是否存在给定carType的停车位,以便车辆进入停车场。

三个槽位大、中、小,分别由1、2和3表示。限制是只有当carType匹配时,汽车才能停在停车位上。如果没有可用的空间,返回false,否则将车停在该大小的空间上并返回true。

如果有2个大车的空间、没有中车的空间和1个小车的空间,那么构造函数调用将像 OurParkingSystem(2, 0, 1) 这样,如果我们调用 addCar 像 −

addCar(3) − 添加一个小车并返回 true

addCar(2) − 无空间添加中型车,因此返回 false

addCar(3) − 没有空间添加新的小车,因此返回false

addCar(1) − 添加一个大型车并返回 true

addCar(1) − 添加另一个大型车并返回 true

addCar(1) − 没有空间添加另一个大型车,因此返回 false

为了解决这个问题,我们将按照以下步骤进行−

  • 定义一个构造函数constructor()。它将取大、中、小

  • sp := 一个类似于 [0,大,中,小] 的列表

  • 定义一个函数 addCar() 。它将取carType。

  • 如果sp[carType] > 0,则

    • sp[carType] := sp[carType] – 1

    • 返回True

  • 返回false

更多Python相关文章,请阅读:Python 教程

示例(Python)

看以下实现以更好地理解−

class OurParkingSystem:
    def __init__(self, big, medium, small):
        self.sp = [0,big,medium,small]

    def addCar(self, carType):
        if(self.sp[carType] >0 ):
            self.sp[carType] -= 1
            return True
        return False

ps = OurParkingSystem(2, 0, 1)
print(ps.addCar(3))
print(ps.addCar(2))
print(ps.addCar(3))
print(ps.addCar(1))
print(ps.addCar(1))
print(ps.addCar(1))

输入

ps.addCar(3)
ps.addCar(2)
ps.addCar(3)
ps.addCar(1)
ps.addCar(1)
print(ps.addCar(1))

输出

True
False
False
True
True
False

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程