我怎样才能找到由列表和字典组成的字典的长度

How can i find the length of dictionary which consists list and again dictionary

查找给定字典列表的长度

x= {
    'output':[
        {
            'frame':{'enc':1,'time':2}, 'eth':{'di':1,'ghg':5}
        },
    ]
}

如何使用 Python 3.6.0 找到 'x' 的长度 len(x) 不起作用我已经试过了。
任何人都可以建议其他方式吗?

我们将这个普通字典称为您的值列表。

打印 x 的长度对我来说很好。

x= {'output':[{'frame':{'enc':1,'time':2}, 'eth':{'di':1,'ghg':5}},]}
print(len(x))

我得到的输出为 1

解释:-

你定义了一个名为 x 的字典,你试图在其中获取 x 的长度,因为它只有一个 key/value 对,即 'output' 所以它将给出长度1.

如果你想打印被视为输出键值的列表的长度,你可以这样做:-

x= {'output':[{'frame':{'enc':1,'time':2}, 'eth':{'di':1,'ghg':5}},]}
print(len(x['output'][0]))

你会得到 2 作为输出。

如果您需要进一步的解释,可以在下面发表评论。

编码愉快:-)

len(x) 工作正常。你的问题到底是什么?

>>> x = {'output':[{'frame':{'enc':1,'time':2}, 'eth':{'di':1,'ghg':5}},]}
>>> len(x)
1
>>> len(x.keys())
1
>>> len(x.values())
1
>>> x.values()
dict_values([[{'frame': {'enc': 1, 'time': 2}, 'eth': {'di': 1, 'ghg': 5}}]])
>>> len(x['output'])
1
>>> x['output']
[{'frame': {'enc': 1, 'time': 2}, 'eth': {'di': 1, 'ghg': 5}}]
>>>
n = sum([len(v)+1 for k, v in x.items()])
print((n))

这对我有用。在试图从 len(x) 中找出我在 return 中真正想要的东西之后,上述解决方案就派上用场了。

我从这里得到了解决方案: