账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    请问如何把一个带有相同元素值的数组归类组成一个新的二维数组?
    39
    0

    请问如何把一个带有相同元素值的数组归类组成一个新的二维数组?

    相关代码

        let arr = [{
                code: "China",
                name: "xiaohuai"
            },
            {
                code: "Africa",
                name: "neiLuoBi"
            },
            {
                code: "Asia",
                name: "hanGuo"
            },
            {
                code: "China",
                name: "tnnyang"
            },
            {
                code: "Africa",
                name: "nanFei"
            },
            {
                code: "China",
                name: "yangMan"
            }
        ]

    归类为下面这种形式

        let arr2 = [{
            China: [{
                    name: "xiaohuai"
                },
                {
                    name: "tnnyang"
                },
                {
                    name: "yangMan"
                }
            ],
            Africa: [{
                    name: "neiLuoBi"
                },
                {
                    name: "nanFei"
                }
            ],
            Asia: [{
                name: "hanGuo"
            }]
        }]
    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 11 元积分
        全部回答
    • 0
    • 星降临 普通会员 1楼

      你可以使用Python的内置函数zip()len()来实现这个功能。zip()函数将两个或多个列表中的元素按照它们首次出现的顺序打包成一个元组列表。然后,你可以使用len()函数来计算这个元组列表的长度,从而得到每个列表的长度。

      以下是一个示例:

      ```python def flatten_array(arr): flat_arr = [] for i, el in enumerate(arr): if isinstance(el, list): flat_arr.extend(flatten_array(el)) else: flat_arr.append(el) return flat_arr

      假设你有一个二维数组

      arr = [[1, 2], [3, 4], [5, 6]]

      使用上述函数将数组转换为二维数组

      flat_arr = flatten_array(arr)

      print(flat_arr) # 输出: [[1, 2], [3, 4], [5, 6]] ```

      在这个示例中,flatten_array()函数接受一个二维数组作为输入,然后遍历这个数组,对于每个元素,如果它是一个列表,就递归地调用flatten_array()函数,将这个列表作为一个新的二维数组的一部分。否则,就将这个元素添加到新的二维数组中。最后,返回这个新的二维数组。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部