-1

这可能是一个非常愚蠢的问题,但我想知道如何RFC822.SIZE从表单的双字典中提取值:

{1: {'RFC822.SIZE': 2515, 'SEQ': 1}, 
2: {'RFC822.SIZE': 2942, 'SEQ': 2}, ....
4

4 回答 4

2
your_dict = { 1:{'foo':123}}
your_dict[1]['foo']
于 2013-02-17T00:12:18.517 回答
0
In [2]: {1: {'RFC822.SIZE': 2515, 'SEQ': 1}, 2: {'RFC822.SIZE': 2942, 'SEQ': 2}}[1]['RFC822.SIZE']
Out[2]: 2515

{...}[1]返回 sub-dictionary {'RFC822.SIZE': 2515, 'SEQ': 1},您可以使用 从中获取值['RFC822.SIZE']

于 2013-02-17T00:12:39.957 回答
0

“双字典”我想你的意思是嵌套字典,对吧?

好吧,当您通过键(例如,1)访问外部字典的值时,它将返回相应的内部字典,您可以访问哪些值......好吧,就像一个字典。

这是一个例子:

data = {1: {'RFC822.SIZE': 2515, 'SEQ': 1}, 2: {'RFC822.SIZE': 2942, 'SEQ': 2}}

# get the inner dictionary with key 1
key_1 = data[1] # {'RFC822.SIZE': 2515, 'SEQ': 1}

# get RFC822.SIZE
size = key_1['RFC822.SIZE']

知道了这一点,您可以通过直接访问该值来压缩所有代码:

size = data[1]['RFC822.SIZE']

这是一些基本的python(在python上编码时经常使用dicts)所以我建议(如果你打算在python上进行认真的编码)你阅读一些教程,至少你可以在python的文档页面上找到介绍性的

于 2013-02-17T00:15:19.673 回答
0

你有一个嵌套字典,所以使用嵌套查找:

for item in sizeList:
    print item, sizeList[item]['RFC822.SIZE']

请注意 this 与您评论中的用法之间的细微差别:您的评论尝试 index item,而 this 索引sizeList[item].

于 2013-02-17T00:17:39.970 回答