【问题标题】:How can I rewrite python code to javascript?如何将 python 代码重写为 javascript?
【发布时间】:2018-04-15 21:29:13
【问题描述】:

python中的代码是:

def trimTree(tree):
    p=tree[1]
    if type(p) == type(""): return p
    else :
        return(trimTree(p[0]),trimTree(p[1]))

树在哪里:

[
  13,
  [ 6, [ 3, [Object], [Object] ], [ 3, 'a' ] ],
  [ 7, [ 3, 'b' ], [ 4, [Object], [Object] ] ]
]

当我转换时出现错误:

TypeError: 无法读取未定义的属性“0”

我该怎么办?

【问题讨论】:

  • 您可以编辑您的帖子以包含您已经尝试过的 Javascript 吗?到目前为止,没有人能真正帮助你。
  • 我们是否应该猜测错误的javascript代码是什么样的???抱歉,我的水晶球要维修了……
  • 哦,是的 FWIW:这个 Python sn-p 不仅完全无关紧要(你的问题在于 javascript 代码,没有人关心它是否是从其他东西移植过来的),而且还丑陋且完全损坏。
  • 你是如何传递 'tree' 的,该树结构不是 python 支持的格式。

标签: javascript python


【解决方案1】:

使用适当的数据结构,这意味着任何节点只有两个元素的长度,您会得到一个按呼吸顺序排列的值列表(这里的结果是一个字符串)。

function trimTree(tree) {
    var p = tree[1];
    return typeof p === 'string'
        ? p
        : trimTree(p[0]) + trimTree(p[1]);
}

var data = [
        13,
        [
            [6,
                [
                    [3,
                        [
                            [1, 'X'],
                            [2, 'Y']
                        ]
                    ],
                    [3, 'a']
                ]
            ],
            [7,
                [
                    [3, 'b'],
                    [4,
                        [
                            [2, 'Z'],
                            [2, 'Q']
                        ]
                    ]
                ]
            ]
        ]
    ];

console.log(trimTree(data));

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-30
    • 1970-01-01
    相关资源
    最近更新 更多