Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python “列表索引超出范围”_Python_Windows_Wmi_Cpu - Fatal编程技术网

Python “列表索引超出范围”

Python “列表索引超出范围”,python,windows,wmi,cpu,Python,Windows,Wmi,Cpu,下面我有下面的代码,应该得到CPU的温度 import wmi w = wmi.WMI() print w.Win32_TemperatureProbe()[0].CurrentReading 但是,当我运行它时,会收到以下警告: Traceback (most recent call last): File "<string>", line 244, in run_nodebug File "<module1>", line 3, in <module&

下面我有下面的代码,应该得到CPU的温度

import wmi
w = wmi.WMI()
print w.Win32_TemperatureProbe()[0].CurrentReading
但是,当我运行它时,会收到以下警告:

Traceback (most recent call last):
  File "<string>", line 244, in run_nodebug
  File "<module1>", line 3, in <module>
IndexError: list index out of range

这是在windows 7中,顺便说一句。

这只是意味着TemperatureProbe没有在您的机器上实现,可能是您的硬件供应商

您的另一个选项是连接到root\WMI命名空间,并从MSAcpi_ThermalZoneTemperature查询select*,它将返回探测器,您可以查询十分之一开尔文的当前温度。python的WMI中应该有类似的API

更新:以下是一些有效的代码:

In [18]: import wmi

In [19]: w = wmi.WMI(namespace='root\\wmi')

In [20]: ti = w.MSAcpi_ThermalZoneTemperature()[0]  # first probe

In [21]: ti.CurrentTemperature
Out[21]: 3242

由于某些原因,python似乎不喜欢您的语法。唯一缺少的是我添加的导入wmi-我假设您上面发布的代码中已经有了它。否则,它将直接从python终端复制/粘贴。如果你在这里产生实际的错误信息,也许我可以帮助你找出你这边的错误。