1、前言
我们通过dir(obj)来打印对象的所能调用的对象,包含能访问的方法以及变量,但是不知道哪些是变量,哪些是方法?
如dir(a)= ['text', 'attrs']
根据英文含义我们可以得知text用来获取文本的,但是如何使用呢?
那么是 a.text, 还是a.text()?
如果text只是一个属性,那么我们可以直接通过 a.text获取文本内容
如果text是一个方法,那么我们必须使用a.text()进行调用才能获取到文本内容
因此,我们需要一个方法来区分对象可调用的对象是属性还是方法。
2、示例
class A:
def __init__(self):
self.a = 1
self.b = 2
def func(self):
pass
a = A()
我们要知道被实例化的对象a可调用的对象dir(a)种哪些是变量,哪些是方法?
方法判断结果为:
属性为:['b', 'a', '__weakref__', '__module__', '__doc__', '__dict__']
方法为:['func', '__subclasshook__', '__str__', '__sizeof__', '__setattr__', '__repr__', '__reduce_ex__', '__reduce__', &#