【发布时间】:2017-05-05 13:44:26
【问题描述】:
我有一个 python 对象,它是一个字典,键是主机名,值是用户列表,以及他们在字典符号中的磁盘使用情况。我在下面粘贴了我的字典,因为解释似乎令人困惑。每个主机都是一个键,在每个主机下可能有几个用户,这些用户在主机中是常见的,也可能是唯一的。我正在努力检查以下条件。
- 检查每个主机中是否存在该用户。
- 如果是,请添加他在每个主机中使用的总磁盘。
- 如果不是,则将唯一用户附加到字典。
- 现在在大字典中按照用户的磁盘使用顺序对用户进行排序。
目前取得的成就: 1.登录各个主机 2. 获取用户及其磁盘使用情况 3. 结果存储在以主机名作为键的字典中,值是用户及其磁盘使用情况的列表。
如果我能把它变成 dict 的 dict,我希望我的问题得到解决。
{
'localhost': [
'alice: 1491916K',
'bob: 423576K'
],
'10.252.136.241': [
'alice: 3491916K',
'bob: 4235K',
'chaplin: 3456K'
]
}
这是来自 2 台主机的示例输出。现在我有结果对象,它是上述形式的字典。我想迭代到每个主机,查看每个主机中是否存在用户“爱丽丝”并添加他的磁盘空间,并在“爱丽丝”的字典中有一个条目,“鲍勃”也是如此,然后离开“卓别林” ' 就像在新的字典中一样。我不想要特定的主机。我想要最后的总使用量。
我只是停留在迭代。一旦我可以迭代,我就可以设法总结并创建 'user': 'total_space' 的大字典。
[更新] 我的预期输出是
expected_output = { 'alice': '498382K', 'bob': '427811K', 'chaplin': '3456K' }
这里。在每个主机中都添加了 alice 的使用。鲍勃和卓别林也是一样的,因为他不在所有主持人中。
【问题讨论】:
-
请展示您所需输出的示例。
-
@DanielRoseman 在问题更新中添加了我的预期输出。谢谢
-
嗯,迭代不再是最难的事情了;现在您似乎还想将值解析为整数并将它们求和。
标签: python list python-3.x dictionary iteration