如何打印出递归决策树?

2024-05-20 21:37:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要打印出如下所示的递归树。我希望这个代码是通用的,适用于其他树。我只是不知道如何打印递归树。在

PrintDt(网球)使用本词典,例如:

Tennis = ['skurple type', {'gloomp': 'Yes', 'murket': ['which murket', {'grabe': ['grabetime', {'sproon': 'No', 'midnort': 'Yes'}], 'carfer': 'Yes', 'glambit': 'No'}], 'snarzle': ['froovencity level', {'granky': 'No', 'slipely': 'Yes'}]}]

其中输出应为:

按臭鼬类型分割

^{pr2}$

Tags: no代码whichtypeyes网球本词典tennis
1条回答
网友
1楼 · 发布于 2024-05-20 21:37:32

看来这会起作用:

def PrintDt(tree, depth=0):
    if type(tree) == str:
        print depth*'\t', 'Return:', tree
    else:
        print depth*'\t', 'Split on', tree[0]
        for value in tree[1].keys():
            print depth*'\t', 'If', tree[0], '==', value 
            PrintDt(tree[1][value], depth + 1)

示例:

^{pr2}$

相关问题 更多 >