微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

获取内部嵌套字典

如何解决获取内部嵌套字典

我试图从嵌套字典中获取任意值,但出现错误。 我的方法适用于这样的一个级别 dict

    table = [
        {
            "A": 157,"B": 221,"C": 330,"D": 380
        },{
            "A": 510,"B": 547,"C": 660,"D": 780
        },{
            "A": 791,"B": 1111,"C": 1200,"D": 3000
        },]

    from operator import itemgetter
    val = 525
    for dv in table:
        column_B = max(val,dv['B'])
        if val <= dv['B']:
            column_A = (dv['A'])
            column_C = dv['C']
            pct = dv['D']
            break

但是如果我嵌套字典,就会出错。

    table = [
        "inner":{
        
            {   "A": 157,"D": 380
            },{
                "A": 510,"D": 780
            },{
                "A": 791,"D": 3000
            },}

    ]

上面嵌套的字典出现错误。我尝试切片,甚至尝试减少功能,但无法让它发挥作用。我在这里做错了什么?

解决方法

mut self 表示一个列表。 const N: usize = 4; fn main() { let bebalken = [[false; N]; N]; let stuetzen = [[true; N]; N]; let mut f = Feld { abst: [[0; N]; N],bebalken: &bebalken,stuetzen: &stuetzen,balken: [[0; N]; N],}; f.balken_einfugen(0,1,4,1); f.balken_einfugen(1,1); } struct Feld<'a> { abst: [[u8; N]; N],bebalken: &'a [[bool; N]; N],stuetzen: &'a [[bool; N]; N],balken: [[u8; N]; N],} impl Feld<'_> { // `mut self` changed to `&mut self` here pub fn balken_einfugen<'a>(&mut self,x: usize,y: usize,dir: u8,r: u8,connBar: u8) { let imax: usize = N; if dir == 1 { for i in 0..imax { self.balken[x + i][y] = connBar; } }; } } 表示字典。看起来您已经将两者部分混淆了。为了使 [] 有意义,{} 应该是字典,而 table 应该是列表。

table

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。