python类__and__()的实例源码

idsets.py 文件源码 项目:Hawkeye 作者: tozhengxq 项目源码 文件源码 阅读 26 收藏 0 点赞 0 评论 0
def intersection(self, other):
        if isinstance(other, BitSet):
            return self._logic(self.copy(), operator.__and__, other)
        return BitSet(source=(n for n in self if n in other))
test_arithmetic.py 文件源码 项目:py-flags 作者: pasztorpisti 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def test_and(self):
        self._test_incompatible_types_fail(operator.__and__)

        self.assertEqual(no_flags & no_flags, no_flags)
        self.assertEqual(no_flags & all_flags, no_flags)
        self.assertEqual(no_flags & f0, no_flags)
        self.assertEqual(no_flags & f1, no_flags)
        self.assertEqual(no_flags & f2, no_flags)
        self.assertEqual(no_flags & f01, no_flags)
        self.assertEqual(no_flags & f02, no_flags)
        self.assertEqual(no_flags & f12, no_flags)

        self.assertEqual(f0 & no_flags, no_flags)
        self.assertEqual(f0 & all_flags, f0)
        self.assertEqual(f0 & f0, f0)
        self.assertEqual(f0 & f1, no_flags)
        self.assertEqual(f0 & f2, no_flags)
        self.assertEqual(f0 & f01, f0)
        self.assertEqual(f0 & f02, f0)
        self.assertEqual(f0 & f12, no_flags)

        self.assertEqual(f01 & no_flags, no_flags)
        self.assertEqual(f01 & all_flags, f01)
        self.assertEqual(f01 & f0, f0)
        self.assertEqual(f01 & f1, f1)
        self.assertEqual(f01 & f2, no_flags)
        self.assertEqual(f01 & f01, f01)
        self.assertEqual(f01 & f02, f0)
        self.assertEqual(f01 & f12, f1)

        self.assertEqual(all_flags & no_flags, no_flags)
        self.assertEqual(all_flags & all_flags, all_flags)
        self.assertEqual(all_flags & f0, f0)
        self.assertEqual(all_flags & f1, f1)
        self.assertEqual(all_flags & f2, f2)
        self.assertEqual(all_flags & f01, f01)
        self.assertEqual(all_flags & f02, f02)
        self.assertEqual(all_flags & f12, f12)


问题


面经


文章

微信
公众号

扫码关注公众号