使用winreg获取GPU详细信息

时间:2016-02-03 10:34:16

标签: python winreg

我在python 3.4中使用winreg来获取Windows注册表值。 我已经建立了一个系统来获取CPU信息(cpu名称,最大频率等),并且我试图调整它来获取GPU信息。 唯一的问题是包含GPU值的密钥存储在那里:SYSTEM \ CurrentControlSet \ Control \ Video {D1B33FF8-E663-44A7-9C71-2CE551F6C0EE} \ 0000

所以,这是我的代码行到达GPU"目录":

self.connection = winreg.ConnectRegistry(None, winreg.HKEY_LOCAL_MACHINE)
self.subkey = winreg.OpenKey(self.connection, "SYSTEM\CurrentControlSet\Control\Video\{D1B33FF8-E663-44A7-9C71-2CE551F6C0EE}\0000")

但是我得到了这个错误:" OpenKey()参数2必须是str而没有空字符或None,而不是str" 所以我的问题是:如何在路径中使用空字符? 非常感谢, 于连。

1 个答案:

答案 0 :(得分:0)

字符串中的反斜杠字符在Python中用作转义序列。

将它们用作常规字符的最简单方法是使用r字符串:

self.subkey = winreg.OpenKey(self.connection, r"SYSTEM\CurrentControlSet\Control\Video\{D1B33FF8-E663-44A7-9C71-2CE551F6C0EE}\0000")

这是使用r"..."而不仅仅是"..."。这样反斜杠字符不会用作转义字符。