2024-04-29 01:35:48 发布
网友
当运行psutil.virtual_memory()时,得到如下输出:
>>psutil.virtual_memory() vmem(total=8374149120L, available=1247768576L)
但这些值是什么计量单位?文档只是声称它是可用的“总物理内存”,但仅此而已。我试图将其转换为用户可以实际关联的值(即GBs)。
提前谢谢
为什么不使用位移运算符: 如果你想以人类可读的方式显示,就这样!
values = psutil.virtual_memory()
以MB格式显示
total = values.total >> 20
以GB格式显示
total = values.total >> 30
1024^3=字节到千兆字节 所以我认为这项工作:
import psutil memory = psutil.virtual_memory().total / (1024.0 ** 3) print(memory)
指定的度量单位是字节。您可以使用此代码将其转换为Gb的 当你使用这个值时,它会有一个尾随的“L”,但这并不影响计算。
values=psutil.virtual_memory() def get_human_readable_size(self,num): exp_str = [ (0, 'B'), (10, 'KB'),(20, 'MB'),(30, 'GB'),(40, 'TB'), (50, 'PB'),] i = 0 while i+1 < len(exp_str) and num >= (2 ** exp_str[i+1][0]): i += 1 rounded_val = round(float(num) / 2 ** exp_str[i][0], 2) return '%s %s' % (int(rounded_val), exp_str[i][1]) total_size = get_human_readable_size(values.total)
为什么不使用位移运算符: 如果你想以人类可读的方式显示,就这样!
values = psutil.virtual_memory()
以MB格式显示
以GB格式显示
1024^3=字节到千兆字节
所以我认为这项工作:
指定的度量单位是字节。您可以使用此代码将其转换为Gb的 当你使用这个值时,它会有一个尾随的“L”,但这并不影响计算。
相关问题 更多 >
编程相关推荐