如何实现无参数reset()方法,将被修改的字符串还原至初始状态?
实现重置字符串至初始状态的reset()方法
需要实现一个无参数的reset()方法,要求在调用use()清空文本后,将字符串恢复到对象初始化时的初始状态。
完整类实现
class Word: def __init__(self, text): self.text = text # 额外存储初始文本,用于后续重置操作 self.original_text = text def use(self): # 将文本设为空字符串 self.text = "" def reset(self): # 把文本恢复到初始状态 self.text = self.original_text
实现说明
- 在
__init__初始化方法中,新增self.original_text变量保存初始传入的文本,确保初始值不会随self.text的修改而丢失。 reset()方法直接将self.text重新赋值为预先保存的self.original_text,无需接收任何参数即可完成重置。
修正后的单元测试代码
import unittest from word import Word class TestWord(unittest.TestCase): def test_reset(self): string = Word("Sunshine") string.use() string.reset() self.assertEqual("Sunshine", string.text) if __name__ == "__main__": unittest.main()
测试说明
原测试代码缺少测试类定义,这里补充了继承unittest.TestCase的TestWord类,确保测试逻辑能正常执行。若reset()方法实现正确,该测试会通过。
内容的提问来源于stack exchange,提问作者Pencelguy
相关产品推荐
相关产品推荐

