python中dict值的条件计算

2024-06-16 09:47:19 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图编写一个dict理解,其中我想将dict的所有值除以所有键的(1024 * 1024),除了键名为percent时。我编写它的方式是完全丢失percent

我如何使用下面使用的那种理解来保持它

import psutils

virtual_memory_stats = {k: (v/(1024*1024)) for (k, v) in psutil.virtual_memory()._asdict().items() if k != "percent"}

print(virtual_memory_stats)
# {'total': 8192.0, 'available': 2309.91796875, 'used': 4234.609375, 'free': 86.94140625, 'active': 2223.32421875, 'inactive': 2208.53125, 'wired': 2011.28515625}

print(dict(psutil.virtual_memory()._asdict()))
# {'total': 8589934592, 'available': 2409418752, 'percent': 72.0, 'used': 4299833344, 'free': 207478784, 'active': 2202361856, 'inactive': 2184736768, 'wired': 2097471488}

Tags: freestatsvirtualdictusedpsutilactiveavailable