Python3 psutil

Python3 psutils

有谁知道为什么 psutil 的 cpu_freq() returns 是空的?我是 Debian linux 8.7.1 上的 运行 python 3.4。我尝试过使用和不使用提升权限,但都得到了相同的结果。

Python 3.4.2 (default, Oct  8 2014, 10:45:20) 
[GCC 4.9.1] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import psutil
>>> psutil.cpu_freq()
[]
>>> 

其他CPU信息(如cpu_stats())正确返回。 非常感谢!

这是 psutil 中的错误,请参阅 psutil 项目问题跟踪器中的 issue #981

CPU 频率信息的位置已在最近的内核中从 /sys/devices/system/cpu/cpufreq/platform* 目录移动到 /sys/devices/system/cpu/cpu*/cpufreq 目录,项目尚未跟进。

5.2.1 release includes the fix for this.

这是一个刚刚在 psutil 中修复的错误。版本:5.2.1.


与 python 版本或代码无关。

正在尝试从 Linux 系统上的 psutil(最新 - 5.1.3)导入 cpu_freq 失败。该函数未定义,因为没有 /sys/devices/system/cpu/cpufreq 在系统上(根据这一行 https://github.com/giampaolo/psutil/blob/76d1fb61c14d286aa645f154f4a2b7a7bae8a828/psutil/_pslinux.py#L639)

但是,/sys/devices/system/cpu/cpu0/cpufreq(对于 cpu1, CPU2..)

在Ubuntu 16.04(至少是我的机器)上,有 /sys/devices/system/cpu/cpufreq 但它是空的。 因此 cpu_freq() 只是 returns 一个空列表,就像你的情况一样。

这是我刚刚在 psutil 中修复的错误。