python中delattr删除对象方法的代码分析


Posted in Python onDecember 15, 2020

最近我们针对对象属性这块,介绍了不少关于测试属性的方法。在进行一系列测试后,我们发现这个属性并不需要,这时候就要用到删除的功能。在python中可以选择delattr函数删除对象的属性,基于它的删除功能,是否能扩展到删除的对象的方法上,在我们对delattr函数进行全面了解后,展开实例的测试。

1.说明

函数作用用来删除指定对象的指定名称的属性,和setattr函数作用相反。

不能删除对象的方法。

2.参数

object -- 对象。

name -- 必须是对象的属性。

3.返回值

无。

4.实例

>>> a.sayHello
<bound method A.sayHello of <__main__.A object at 0x03F014B0>>
>>> delattr(a,'sayHello') #不能用于删除方法
Traceback (most recent call last):
 File "<pyshell#50>", line 1, in <module>
  delattr(a,'sayHello')
AttributeError: sayHello
>>>

通过测试的结果,我们可以看出delattr函数并不能删除对象的方法,只针对于属性有删除的功能,不然就会报错。相信本篇的实战代码演示能让大家对注意点有一个深刻的印象。

Python3基础 delattr 删除对象的属性

class MyClass:
  # num是类属性
  num = 1

  def __init__(self, name):
    self.name = name


def main():
  test = MyClass("shemingli")

  # 删除类属性
  # 删除类属性要写类名,而不是实例名
  delattr(MyClass, "num")

  # 删除实例属性
  delattr(test, "name")

  """
    def delattr(o: Any, name: str)
    Inferred type: (o: Any, name: str) -> None

    Deletes the named attribute from the given object.
    delattr(x, 'y') is equivalent to ``del x.y''
  """
  # 注:如果属性不存在,就抛出异常


if __name__ == '__main__':
  main()

到此这篇关于python中delattr删除对象方法的代码分析的文章就介绍到这了,更多相关python中delattr可以删除对象方法吗内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现代码行数统计示例分享
Feb 10 Python
在Python上基于Markov链生成伪随机文本的教程
Apr 17 Python
Python中的FTP通信模块ftplib的用法整理
Jul 08 Python
利用Python画ROC曲线和AUC值计算
Sep 19 Python
用yum安装MySQLdb模块的步骤方法
Dec 15 Python
Python读取和处理文件后缀为.sqlite的数据文件(实例讲解)
Jun 27 Python
浅谈python连续赋值可能引发的错误
Nov 10 Python
Python通过TensorFlow卷积神经网络实现猫狗识别
Mar 14 Python
Python+Dlib+Opencv实现人脸采集并表情判别功能的代码
Jul 01 Python
python时间序列数据转为timestamp格式的方法
Aug 03 Python
Python绘图之二维图与三维图详解
Aug 04 Python
Pandas对每个分组应用apply函数的实现
Dec 13 Python
详解python中的三种命令行模块(sys.argv,argparse,click)
Dec 15 #Python
python 基于Apscheduler实现定时任务
Dec 15 #Python
next在python中返回迭代器的实例方法
Dec 15 #Python
python中slice参数过长的处理方法及实例
Dec 15 #Python
关于django python manage.py startapp 应用名出错异常原因解析
Dec 15 #Python
Window10上Tensorflow的安装(CPU和GPU版本)
Dec 15 #Python
详解python中的异常捕获
Dec 15 #Python
You might like
Gregarius中文日期格式问题解决办法
2008/04/22 PHP
在IE浏览器中resize事件执行多次的解决方法
2011/07/12 Javascript
JavaScript 验证码的实例代码(附效果图)
2013/03/22 Javascript
js中opener与parent的区别详细解析
2014/01/14 Javascript
分享9点个人认为比较重要的javascript 编程技巧
2015/04/27 Javascript
前端框架Vue.js构建大型应用浅析
2016/09/12 Javascript
使用JS中的Replace()方法遇到的问题小结
2017/10/20 Javascript
vue项目中运用webpack动态配置打包多种环境域名的方法
2019/06/24 Javascript
ionic+html5+API实现双击返回键退出应用
2019/09/17 Javascript
vue调用语音播放的方法
2019/09/27 Javascript
vue.js实现二级菜单效果
2019/10/19 Javascript
js实现抽奖的两种方法
2020/03/19 Javascript
JS实现数据动态渲染的竖向步骤条
2020/06/24 Javascript
JavaScript实现点击切换功能
2021/01/27 Javascript
[01:27]2014DOTA2展望TI 剑指西雅图IG战队专访
2014/06/30 DOTA
python实现按任意键继续执行程序
2016/12/30 Python
python 设置文件编码格式的实现方法
2017/12/21 Python
Python之time模块的时间戳,时间字符串格式化与转换方法(13位时间戳)
2019/08/12 Python
Python计算矩阵的和积的实例详解
2020/09/10 Python
Django crontab定时任务模块操作方法解析
2020/09/10 Python
CSS3实现瀑布流布局与无限加载图片相册的实例代码
2016/12/22 HTML / CSS
Edwaybuy西班牙:小米在线商店
2019/12/04 全球购物
介绍一下HTTP、HTTPS和SSL
2012/12/16 面试题
数据员岗位职责
2013/11/19 职场文书
4s客服专员岗位职责
2013/12/01 职场文书
端午节粽子促销活动方案
2014/02/02 职场文书
学生个人自我鉴定范文
2014/03/28 职场文书
幼儿园植树节活动总结
2014/07/04 职场文书
初三毕业评语
2014/12/26 职场文书
小学二年级数学教学计划
2015/01/20 职场文书
2015年度物业公司工作总结
2015/04/27 职场文书
热血教师观后感
2015/06/10 职场文书
python 命令行传参方法总结
2021/05/25 Python
opencv用VS2013调试时用Image Watch插件查看图片
2021/07/26 Python
FFmpeg视频处理入门教程(新手必看)
2022/01/22 杂记
tree shaking对打包体积优化及作用
2022/07/07 Java/Android