python-反射

目录

 

一.概念

1.python面向对象中的反射:

2.四个反射相关的函数

二.介绍反射的方法

(1)hasattr判断是否有此变量,返回bool 值

(2)getattr获取属性值或者获取方法变量的地址

(3)setattr()给对象或者类设置属性

(4)delattr删除对象属性


一.概念

1.python面向对象中的反射:

通过字符串的形式操作对象相关的属性

python中的一切事物都是对象(都可以使用反射)

2.四个反射相关的函数

-hasattr :判断是否有此变量,返回bool 值

-getattr : 获取属性值或者获取方法变量的地址

-setattr :给类或者对象设置属性或者方法 (用的场合很少,了解即可)

-delattr:  删除类或者对象的属性或方法(用的场合很少,了解即可)

二.介绍反射的方法

(1)hasattr判断是否有此变量,返回bool 值

我们先来个简单的例子

检测对象/类是否具有某个成员

格式:hasattr(对象/类,'成员名')

返回值:布尔值

可以使用的地方

(2)getattr获取属性值或者获取方法变量的地址

获取对象/类中的成员值

格式:getattr(对象,'属性名'[,成员不存在时的默认值])

返回值:成员的值

 

(3)setattr()给对象或者类设置属性

(4)delattr删除对象属性

删除对象/类中的成员

格式: delattr(对象,成员)

返回值:None

 

  • 2
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python中,列表是一种有序、可变的数据类型,可以存储多个元素。列表反射是指通过字符串来获取或操作列表中的元素或属性。 要实现列表反射,可以使用以下几种方法: 1. 通过索引获取元素:可以使用列表名加上索引的方式来获取列表中的元素。例如,如果有一个列表`my_list = [1, 2, 3]`,可以通过`my_list`来获取第一个元素。 2. 通过切片获取子列表:可以使用切片操作来获取列表中的一部分元素。例如,如果有一个列表`my_list = [1, 2, 3, 4, 5]`,可以通过`my_list[1:3]`来获取索引为1和2的元素,即返回`[2, 3]`。 3. 使用内置函数获取列表信息:Python提供了一些内置函数来获取列表的信息,如`len()`函数可以获取列表的长度,`max()`和`min()`函数可以获取列表中的最大值和最小值。 4. 使用反射函数`getattr()`:反射函数`getattr()`可以通过字符串来获取对象的属性或方法。对于列表来说,可以使用`getattr()`函数来获取列表的方法或属性。例如,如果有一个列表`my_list = [1, 2, 3]`,可以使用`getattr(my_list, 'append')`来获取列表的`append()`方法。 5. 使用eval()函数:eval()函数可以将字符串作为Python代码进行求值。对于列表来说,可以使用eval()函数来执行字符串中的列表操作。例如,如果有一个字符串`"my_list.append(4)"`,可以使用`eval("my_list.append(4)")`来将元素4添加到列表中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值