a = QtGui.QLineEdit()
Run Code Online (Sandbox Code Playgroud)
有没有办法查询变量a是什么 Qt 小部件?似乎一些 Qt 小部件将提供.uiType属性。但有些(如布局)不是。
小智 5
您可以使用type内置的获取 Python 中任何对象的类型:
print type(a)
Run Code Online (Sandbox Code Playgroud)
您可能还对__name__和__class__属性感兴趣,它们将保存与小部件名称和类对应的数据:
type(a).__name__ # Returns class name as a string
a.__class__ # Same as type(a)
Run Code Online (Sandbox Code Playgroud)
但是请注意,如果你需要执行一个类型检测,你应该使用isinstance:
isinstance(a, type_to_test_for)
Run Code Online (Sandbox Code Playgroud)
这将考虑继承。