反射

本文介绍Python中反射的概念及应用,包括hasattr、getattr、setattr和delattr等内置函数的使用,以及如何通过字符串操作类的方法。通过具体实例展示如何在运行时动态地获取和设置对象属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

isinstance(x,y)  判断x是否是y的实例化对象

issubclass(a,b)判断a是否是b的子类

一、反射:

  指的是通过字符串来操作函数属性

   几个内置函数:

   hasattr(a,b):a对象是否存在b属性。本质是调用 in 关系运算

   getattr(a,b,c):获得a对象的b属性值,若不存在则返回c

   setattr(a,b,c):给a对象设置b属性,属性值为c、r

   delattr(a,b):删除a对象的b属性

   

class FTP:
    def get(self):
        print('get')

    def put(self):
        print('put')

    def login(self):
        print('login')

    def run(self):
        while True:
            choice = input('>>>').strip()
            if hasattr(self, choice):
                method = getattr(self, choice)
                method()
            else:
                print('命令不存在')

 

    

转载于:https://www.cnblogs.com/linbin7/p/11126569.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值