获取对象的信息
Topic source补充:
__init__中 x没有作为参数传递给类的属性
二十类在初始化时,定义了一个默认属性x值为9.
因此,需要却别理解写成 def __init__(self,x): self.x=x #x作为参数传递给self.x属性
>>> class MyObject(object):
... def __init__(self):
... self.x = 9
... def power(self):
... return self.x * self.x
- 1
本人已被河蟹
type() ***返回***对象类型
>>> type('abc')
types 判断***对象是否是函数 import types,返回***布尔
>>> type(abs)==types.BuiltinFunctionType
isinstance() 判断***类及其继承链上的父类或其他基本类型,返回***布尔
>>> isinstance(a,Dog)
>>> isinstance(a,Animal)
>>> isinstance(123,int)
dir() 获取对象的所有属性和方法
>>> dir('abc')
getattr()、setattr()、hasattr() 【属性和方法的】获取、设置、判断是否存在。
>>> getattr(obj,'z') #getattr(obj,'z',404) 。不存在回报错,404是不存在时默认返回信息
>>> setattr(obj,'x',123)
>>> hasattr(obj,'y')