首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >嵌套字典与二维数组的比较

嵌套字典与二维数组的比较
EN

Stack Overflow用户
提问于 2021-12-14 04:53:38
回答 1查看 63关注 0票数 1

所以我有这个嵌套字典

我正在试着用字典来测试数组。字典本质上是一个经过训练的决策树,因此:

  • 高->多云->真(雨)
  • 低->晴天->真(雨)

任何其他条件都意味着(不下雨),例如,高->部分多云->假(无雨)

我编写这个函数是为了从上面得到想要的输出,但是我在导航树和获取错误的值方面有点失败。

代码语言:javascript
复制
def predict(x, d):
        for key, value in d.items():
            if type(value) is dict:
                if key.split(" = ")[1] in x:
                    return predict(x, value)
            else:
                return value
    
pred = [predict(x, tree) for x in X]

我如何浏览这本字典和检查上述条件?感谢你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-14 11:20:35

我将数据简化了一点,下面的工作如下

代码语言:javascript
复制
def predict(x, d):                                                                                                   
    if type(d[x[1]]) is not dict:                                                                                    
        return d[x[1]]                                                                                               
    if x[1] in d.keys():                                                                                             
        return d[x[1]][x[0]]

我用myDictionary代替了

代码语言:javascript
复制
tree = {'cloudy': {'high': True, 'low': False},                                                                      
        'partly cloudy': False,                                                                                      
        'sunny': {'high': False, 'low': True}}

我假设您是从其他示例中获得代码的,因为我发现这里的递归很复杂。思维简单。

如果有一个值为string的键,则返回此

  • ,否则返回嵌套dict.

的值。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70343951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档