我想在下面的代码中迭代对象的所有可用属性并打印它们。我尝试了print(vars(usb)),usb.dictitems(),但都不起作用。有办法吗?你知道吗
import win32com.client
wmi = win32com.client.GetObject ("winmgmts:")
for usb in wmi.InstancesOf ("Win32_PnPEntity"):
print(usb.deviceID)
print(usb.Availability);
print(usb.Caption);
....
使用dir()可以处理普通的python对象。我不熟悉win32com(我甚至不使用Windows),但这里有一个简单的例子:
除非所讨论的类正在做一些不寻常的事情,比如重写
__getattr__
,否则这应该是可行的。在这种情况下,我怀疑没有办法做到这一点,除非库本身提供了一种方法。你知道吗编辑也可以被覆盖,这打破了这种自省。一种选择是由https://stackoverflow.com/a/6886536/11939043提出的
相关问题 更多 >
编程相关推荐