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字符串替换实例分析
May 11 Python
浅谈Python中chr、unichr、ord字符函数之间的对比
Jun 16 Python
Python中表达式x += y和x = x+y 的区别详解
Jun 20 Python
使用python实现BLAST
Feb 12 Python
Python迭代器与生成器用法实例分析
Jul 09 Python
Python实现简单的用户交互方法详解
Sep 25 Python
python pcm音频添加头转成Wav格式文件的方法
Jan 09 Python
Python 移动光标位置的方法
Jan 20 Python
在notepad++中实现直接运行python代码
Dec 18 Python
python sitk.show()与imageJ结合使用常见的问题
Apr 20 Python
使用Keras实现简单线性回归模型操作
Jun 12 Python
详解tf.device()指定tensorflow运行的GPU或CPU设备实现
Feb 20 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
初识Laravel
2014/10/30 PHP
phpmyadmin中禁止外网使用的方法
2014/11/04 PHP
php 微信开发获取用户信息如何实现
2016/12/13 PHP
PHP连接及操作PostgreSQL数据库的方法详解
2019/01/30 PHP
一个javascript图片阅览组件
2010/11/09 Javascript
JQuery入门——移除绑定事件unbind方法概述及应用
2013/02/05 Javascript
js判断60秒以及倒计时示例代码
2014/01/24 Javascript
JS生成不重复随机数组的函数代码
2014/06/10 Javascript
jquery判断至少有一个checkbox被选中的方法
2015/06/05 Javascript
JavaScript实现自动对页面上敏感词进行屏蔽的方法
2015/07/27 Javascript
Jquery插件之Fancybox丰富的弹出层效果附源码下载
2015/12/02 Javascript
微信小程序 点击控件后选中其它反选实例详解
2017/02/21 Javascript
vue中页面跳转拦截器的实现方法
2017/08/23 Javascript
vue2利用Bus.js如何实现非父子组件通信详解
2017/08/25 Javascript
vue引入js数字小键盘的实现代码
2018/05/14 Javascript
详解Vue SPA项目优化小记
2018/07/03 Javascript
[46:47]2014 DOTA2国际邀请赛中国区预选赛5.21 LGD-CDEC VS NE
2014/05/22 DOTA
[54:45]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 Optic vs OG
2018/04/02 DOTA
python opencv检测目标颜色的实例讲解
2018/04/02 Python
python实现可视化动态CPU性能监控
2018/06/21 Python
python 列表降维的实例讲解
2018/06/28 Python
Django框架设置cookies与获取cookies操作详解
2019/05/27 Python
Python寻找路径和查找文件路径的示例
2019/07/10 Python
python实现大文件分割与合并
2019/07/22 Python
Django时区详解
2019/07/24 Python
高级销售求职信
2014/02/21 职场文书
企业法人授权委托书
2014/04/03 职场文书
群众路线查摆问题整改措施思想汇报
2014/10/10 职场文书
刑事辩护授权委托书范本
2014/10/17 职场文书
爱情保证书
2015/01/17 职场文书
大学文艺委员竞选稿
2015/11/19 职场文书
2016年小学感恩节活动总结
2016/04/01 职场文书
CSS3实现的侧滑菜单
2021/04/27 HTML / CSS
python四个坐标点对图片区域最小外接矩形进行裁剪
2021/06/04 Python
分析JVM源码之Thread.interrupt系统级别线程打断
2021/06/29 Java/Android
Java数组与堆栈相关知识总结
2021/06/29 Java/Android