type() 函数获取变量的类型:

>>> type(123)
<class 'int'>

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

dir() 函数获取变量的所有属性:

>>> dir(123)
['__abs__', '__add__', '__and__', '__bool__', '__ceil__', '__class__', '__delattr__', '__dir__', '__divmod__', ...]

 

已知一个属性名称,要获取或者设置对象的属性,就需要用 getattr() setattr( )函数:

例如,已有定义:

class Person(object):
    def __init__(self, name, gender):
        self.name = name
        self.gender = gender

class Student(Person):
    def __init__(self, name, gender, score):
        super(Student, self).__init__(name, gender)
        self.score = score
    def whoAmI(self):
        return 'I am a Student, my name is %s' % self.name

s = Student('Bob', 'Male', 88)
>>> getattr(s, 'name') # 获取name属性
'Bob'

>>> setattr(s, 'name', 'Adam') # 设置新的name属性

>>> s.name
'Adam'

>>> getattr(s, 'age', 20)  # 获取age属性,如果属性不存在,就返回默认值20:
20


 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄