python3 反射的四种基本方法解析

yipeiwu_com7年前Python基础

这篇文章主要介绍了python3 反射的四种基本方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

class Person(object):  
  def __init__(self):
    pass
  def info(self):
    print('我是person类中的info方法')

1.getattr()方法

这个方法是根据字符串去某个模块中寻找方法

instantiation = reflect.Person()#先实例化
f = getattr(instantiation,'info')#使用getattr函数去寻找字符串的同名方法
f()#调用方法
输出结果:我是person类中的info方法

2.hasattr()方法

这个方法是根据字符串去判断某个模块中该方法是否存在

instantiation = reflect.Person()#先实例化
f = hasattr(instantiation,'info')
print(f)
输出结果:True

3.setattr()方法

这个方法是根据字符串去某个模块中设置方法

instantiation = reflect.Person()
f = setattr(instantiation,'exit','this is a exit method')
f2 = hasattr(instantiation,'exit')
print(f2)
输出结果就是True

4.delattr()方法

这个方法是根据字符串去某个模块中删除方法

instantiation = reflect.Person()#实例化
f = delattr(instantiation,'exit')
f = hasattr(instantiation,'exit')
print(f)
输出结果就是False

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在python3中pyqt5和mayavi不兼容问题的解决方法

在python3中pyqt5和mayavi不兼容问题的解决方法

环境: win10 64bit & Linux Mint 18.2 WinPython3.6.1,spyder,qtconsole iep3.7 问题描述: 通过http://www.l...

用Python实现将一张图片分成9宫格的示例

用Python实现将一张图片分成9宫格的示例

经常看到朋友圈或者空间里有朋友发布照片时,将朋友圈的照片切分为九宫格,参考了一些大神的博客资料,现整理如下; 将图片分拆成九宫格的思路: 读取图片->填充图片为正方形(fill_i...

详解python中xlrd包的安装与处理Excel表格

一、安装xlrd 地址 下载后,使用 pip install .whl 安装即好。 查看帮助: >>> import xlrd >>> help...

详解Python开发中如何使用Hook技巧

详解Python开发中如何使用Hook技巧

什么是Hook,就是在一个已有的方法上加入一些钩子,使得在该方法执行前或执行后另在做一些额外的处理,那么Hook技巧有什么作用以及我们为什么需要使用它呢,事实上如果一个项目在设计架构时考...

python 默认参数问题的陷阱

python 里面一个常见的陷阱就是函数的默认参数问题。如下: def func(mylist = []): mylist.append(1) return mylist...