Python - 检查元素的一部分是否已设置

时间:2016-09-29 16:32:56

标签: python

我有一个带有此输出的集合:

#define constant(a) (a)
#define constant2(a,b) (a##b)
#define constant3(a,b,c) (a##b##c)

constant(10000)
constant2(10,000)
constant3(10,000,000)

我想检查元素是否与此集合中的项目匹配,但忽略

df.groupby(['Date','Value']).count().unstack(level=-1)

这可能吗?

1 个答案:

答案 0 :(得分:0)

未经测试的代码,但这是实现它的一种方式。如果此规则应扩展到任何类型的相等性检查,我建议使用__eq__(self, other)逻辑修改Rule类的神奇rules_match方法。

def rules_match(rule1, rule2):
    attributes_to_check = ['chain', 'target', 'prot', 'opt', ...]
    return all(getattr(rule1, attribute) == getattr(rule2, attribute) for attribute in attributes_to_check)

def rule_in_set(rule, rule_set):
    return any(rules_match(rule, i) for i in rule_set)