从哪里开始空班?

这是关于 Python 的。我正在创建一个BitCode类,字符串只能由 0 和 1 组成,如果不是,它将引发ValueError带有消息的 a 。

例如,

b = BitCode('1001')

已验证。

写完之后我在想:

class Bitcode:

代码的测试部分是:

class TestBitCode(unittest.TestCase):

    def test_constructor_value_error_bits(self):
        with self.assertRaises(ValueError):
            b = BitList('FE')

我可以将检查以确保每个对象的参数仅包含 0 和 1 的代码放在哪里?

回答

class BitCode:
    def __init__(self, s):
        if len(set(s + "01")) != 2:
            raise ValueError
        ...

s + "01"将“0”和“1”添加到结果字符串中,结果我们得到一组字符,其中至少有“0”和“1”。用set我们只保留独特的元素。其中会有0和1,以及所有不是0和1的元素,我们找出长度,如果不等于2,则抛出异常


以上是从哪里开始空班?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>