def match_attributes(obj, **attributes):
    """
    判断对象是否匹配输入的属性条件

    :param obj: 对象
    :param attributes: 属性键值对
    :return: 若匹配则为 True，否则为 False
    """

    has_raw = hasattr(obj, 'raw')

    for attr, value in attributes.items():
        if (getattr(obj, attr, None) or (obj.raw.get(attr) if has_raw else None)) != value:
            return False
    return True
判断对象是否匹配输入的属性条件

:param obj: 对象
:param attributes: 属性键值对
:return: 若匹配则为 True，否则为 False
wxpy/utils/misc.py