python基础 之 内置函数获取对象信息

注:个人笔记,仅供参考
环境:python3.8 win10

'''
@fengx
-- 获取对象信息
type(),isinstance(),dir(),hasattr(),setattr(),getattr()
--20200623
'''

def get_lenth(q):
    print(len(q))
    
a = 'You Make Me Sick'
get_lenth(a)

print(a.__len__())
print('--------------------------')

ty = type((x for x in range(10)))
print(ty)

class MyDog(object):
    def __len__(self):
        return 100

dog = MyDog()
print(len(dog))
print('--------------------------')

class MyObject(object):
    def __init__(self):
        self.x = 9
    def power(self):
        return self.x * self.x
obj = MyObject()
print(obj)
print(hasattr(obj,'x'))#判断是否有 x 属性 #True
print(hasattr(obj,'y'))#False

setattr(obj,'y',20) 
# 为obj 添加一个y 属性,需传入3个参数
print(hasattr(obj,'y')) #True
setattr(obj,'z',obj.power())

print(getattr(obj,'z'))#获取obj的z属性 #81
print(obj.z) #81

print(getattr(obj,'q',100))#增加一个default值100,若无该属性,则返回默认值 #100

# 以上内置函数用于不清楚对象信息的时候

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值