📜  门| GATE CS 1997 |问题15(1)

📅  最后修改于: 2023-12-03 15:12:35.528000             🧑  作者: Mango

门 | GATE CS 1997 | 问题15

这道题目考察了程序员的理解能力和编程技能。题目要求实现一个门(Gate)类,该类有一个属性和两个方法。

属性
  • counter:门的计数器,初始化为0。
方法
  • __init__(self, name: str):初始化门的名字和计数器。

  • pass_gate(self):通过门时将计数器加1。

  • get_count(self):返回通过门的人数。

以下是Python3的实现代码:

class Gate:
    def __init__(self, name: str):
        self.__name = name
        self.__counter = 0

    def pass_gate(self):
        self.__counter += 1

    def get_count(self):
        return self.__counter

在上面的实现代码中,我们用了一个双下划线将属性设为私有,这是为了保证数据的封装性和安全性。

你可以通过以下代码对 Gate 类进行测试:

if __name__ == "__main__":
    g = Gate("gate")
    g.pass_gate()
    g.pass_gate()
    g.pass_gate()
    print(g.get_count())  # output: 3

上述测试代码创建了一个名为 gateGate 对象,通过 pass_gate() 方法三次,然后调用 get_count() 方法,输出通过门的人数为 3。

总结

这道题目考察了 Python 类的基础知识,以及对属性和方法的定义、访问控制的理解能力。熟练掌握这些知识和技能对于成为一名合格的 Python 程序员是非常必要的。