📅  最后修改于: 2023-12-03 15:12:44.865000             🧑  作者: Mango
你需要实现一个门,这个门可以被打开和关闭。门的状态必须被保存。
门必须有以下方法:
open()
:打开门。close()
:关闭门。is_open()
:如果门当前是开的,则返回True,否则返回False。is_closed()
:如果门当前是关的,则返回True,否则返回False。door = Door()
assert not door.is_closed()
assert door.is_open()
door.close()
assert door.is_closed()
assert not door.is_open()
door.open()
assert not door.is_closed()
assert door.is_open()
创建一个 Door
类,用于处理门的打开和关闭,同时跟踪门的状态。为了保存门的状态,我们可以使用一个布尔值来表示门的状态。
创建 Door
类后,我们需要创建 open
、close
、is_open
和 is_closed
实例方法,用于操作门的行为,并获取门的状态。
在 open
和 close
方法中,我们只需要改变保存门状态的变量,来达到我们操作门的目的。
在 is_open
和 is_closed
方法中,我们可以检查当前门状态,并返回相应的值。
class Door:
def __init__(self):
self._is_open = True
def open(self):
self._is_open = True
def close(self):
self._is_open = False
def is_open(self):
return self._is_open
def is_closed(self):
return not self._is_open
def test_door():
door = Door()
assert not door.is_closed()
assert door.is_open()
door.close()
assert door.is_closed()
assert not door.is_open()
door.open()
assert not door.is_closed()
assert door.is_open()
test_door()
test_door
测试方法运行通过。
此实例说明了如何创建一个包含状态跟踪的简单类。门可以根据操作进行打开或关闭,并可以查询其状态。