from typing import Any, Dict

def 是否相等_忽略键顺序(
    字典1: Dict[str, Any],
    字典2: Dict[str, Any]
) -> bool:
    """判断两个字典在忽略键顺序的前提下是否结构相等。

    功能说明:
        - 这个函数用于判断两个字典在忽略键顺序的前提下是否结构相等。
        - 它主要返回 True 或 False，适合直接写在 if 判断里控制后续流程。
        - 当输入不符合要求时，函数会直接返回 False，方便你快速判断这次操作有没有成功。

    Args:
        字典1 (dict): 第一个待比较字典。
        字典2 (dict): 第二个待比较字典。

    Returns:
        bool:
        True  - 两个字典结构相等；
        False - 不相等或参数非法。"""
    try:
        if not isinstance(字典1, dict):
            return False

        if not isinstance(字典2, dict):
            return False

        return 字典1 == 字典2
    except Exception:
        return False


if __name__ == "__main__":
    print("===== 示例1：基础用法 =====")
    字典1 = {"a": 1, "b": 2, "c": 3}
    字典2 = {"b": 2, "c": 4, "d": 5}
    print("结果:", 是否相等_忽略键顺序(字典1, 字典2))
    print("字典1:", 字典1)
    print("字典2:", 字典2)

    print("\n===== 示例2：常见变体 =====")
    字典1 = {"名称": "zfx", "城市": "上海"}
    字典2 = {"城市": "上海", "名称": "zfx"}
    print("结果:", 是否相等_忽略键顺序(字典1, 字典2))
    print("字典1:", 字典1)
    print("字典2:", 字典2)

    print("\n===== 示例3：边界情况 =====")
    字典1 = {}
    字典2 = {}
    print("结果:", 是否相等_忽略键顺序(字典1, 字典2))
    print("字典1:", 字典1)
    print("字典2:", 字典2)

    print("\n===== 示例4：异常情况 =====")
    字典1 = []
    字典2 = []
    print("结果:", 是否相等_忽略键顺序(字典1, 字典2))
    print("字典1:", 字典1)
    print("字典2:", 字典2)

    print("\n===== 示例5：特殊值情况 =====")
    字典1 = {"配置": {"端口": 3306}, "debug": False}
    字典2 = {"配置": {"端口": 3306}, "debug": False}
    print("结果:", 是否相等_忽略键顺序(字典1, 字典2))
    print("字典1:", 字典1)
    print("字典2:", 字典2)

    print("\n===== 示例6：应用场景-整理业务字典 =====")
    字典1 = {"订单号": "A001", "状态": "待支付", "金额": 99}
    字典2 = {"状态": "待支付"}
    print("结果:", 是否相等_忽略键顺序(字典1, 字典2))
    print("字典1:", 字典1)
    print("字典2:", 字典2)
