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利用beautifulSoup实现爬虫
Sep 29 Python
Python+微信接口实现运维报警
Aug 27 Python
Python中使用asyncio 封装文件读写
Sep 11 Python
Python正则替换字符串函数re.sub用法示例
Jan 19 Python
python生成1行四列全2矩阵的方法
Aug 04 Python
python去除拼音声调字母,替换为字母的方法
Nov 28 Python
python使用for循环计算0-100的整数的和方法
Feb 01 Python
详解Python locals()的陷阱
Mar 26 Python
Pandas中resample方法详解
Jul 02 Python
Python网络爬虫四大选择器用法原理总结
Jun 01 Python
什么是python的必选参数
Jun 21 Python
Python基础知识学习之类的继承
May 31 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
PHP 超链接 抓取实现代码
2009/06/29 PHP
PHP保留两位小数并且四舍五入及不四舍五入的方法
2013/09/22 PHP
php操作(删除,提取,增加)zip文件方法详解
2015/03/12 PHP
PHP使用zlib扩展实现GZIP压缩输出的方法详解
2018/04/09 PHP
PHP多个图片压缩成ZIP的方法
2020/08/18 PHP
PHP7 mongoDB扩展使用的方法分享
2019/05/02 PHP
ExtJS Store的数据访问与更新问题
2010/04/28 Javascript
Jquery 最近浏览过的商品的功能实现代码
2010/05/14 Javascript
jQuery Mobile页面跳转后未加载外部JS原因分析及解决
2013/03/18 Javascript
深入分析JSONP跨域的原理
2014/12/10 Javascript
javascript的日期对象、数组对象、二维数组使用说明
2014/12/22 Javascript
JS和css实现检测移动设备方向的变化并判断横竖屏幕
2015/05/25 Javascript
php利用curl获取远程图片实现方法
2015/10/26 Javascript
深入浅析JavaScript中的constructor
2016/04/19 Javascript
JS递归遍历对象获得Value值方法技巧
2016/06/14 Javascript
浅谈Express异步进化史
2017/09/09 Javascript
详解vue中使用express+fetch获取本地json文件
2017/10/10 Javascript
使用Jenkins部署React项目的方法步骤
2019/03/11 Javascript
vue常用高阶函数及综合实例
2021/02/25 Vue.js
[01:32:50]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第一场 1月25日
2021/03/11 DOTA
django框架模板语言使用方法详解
2019/07/18 Python
VSCode配合pipenv搞定虚拟环境的实现方法
2020/05/17 Python
Python 3.9的到来到底是意味着什么
2020/10/14 Python
HTML5 Canvas的事件处理介绍
2015/04/24 HTML / CSS
html5给汉字加拼音加进度条的实现代码
2020/04/07 HTML / CSS
安德玛菲律宾官网:Under Armour菲律宾
2020/07/28 全球购物
static函数与普通函数有什么区别
2015/12/25 面试题
化工专业个人的求职信范文
2013/11/28 职场文书
决定成败的关键——创业计划书
2014/01/24 职场文书
《夜晚的实验》教学反思
2014/02/19 职场文书
经济国贸专业求职信
2014/06/18 职场文书
2014年司法局工作总结
2014/12/11 职场文书
西双版纳导游词
2015/02/03 职场文书
兼职安全员岗位职责
2015/02/15 职场文书
2015年宣传部工作总结范文
2015/03/31 职场文书
Java无向树分析 实现最小高度树
2022/04/09 Javascript