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 相关文章推荐
Python3.0与2.X版本的区别实例分析
Aug 25 Python
python中遍历文件的3个方法
Sep 02 Python
Python实现去除代码前行号的方法
Mar 10 Python
python在控制台输出进度条的方法
Jun 20 Python
Python字符编码判断方法分析
Jul 01 Python
python调用tcpdump抓包过滤的方法
Jul 18 Python
python3编写ThinkPHP命令执行Getshell的方法
Feb 26 Python
PyQt5实现QLineEdit添加clicked信号的方法
Jun 25 Python
Python2与Python3的区别点整理
Dec 12 Python
Python Selenium安装及环境配置的实现
Mar 17 Python
Django日志及中间件模块应用案例
Sep 10 Python
python 对一幅灰度图像进行直方图均衡化
Oct 27 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
图形数字验证代码
2006/10/09 PHP
解析PHP工厂模式的好处
2013/06/18 PHP
ThinkPHP调试模式与日志记录概述
2014/08/22 PHP
PHP编程实现微信企业向用户付款的方法示例
2017/07/26 PHP
Laravel 登录后清空COOKIE的操作方法
2019/10/14 PHP
jquery插件jbox使用iframe关闭问题
2009/02/09 Javascript
JavaScript实现页面实时显示当前时间的简单实例
2013/07/20 Javascript
javascript每日必学之基础入门
2016/02/16 Javascript
javascript实现简单的ajax封装示例
2016/12/28 Javascript
JavaScript正则表达式exec/g实现多次循环用法示例
2017/01/17 Javascript
Angular 输入框实现自定义验证功能
2017/02/19 Javascript
Vue.js父与子组件之间传参示例
2017/02/28 Javascript
NodeJS测试框架mocha入门教程
2017/03/28 NodeJs
jQuery选择器之表单元素选择器详解
2017/09/19 jQuery
Vue中使用Sortable的示例代码
2018/04/07 Javascript
bootstrap动态调用select下拉框的实例代码
2018/08/09 Javascript
[02:02:38]VG vs Mineski Supermajor 败者组 BO3 第一场 6.6
2018/06/07 DOTA
python中pygame模块用法实例
2014/10/09 Python
Django中对通过测试的用户进行限制访问的方法
2015/07/23 Python
Python读取一个目录下所有目录和文件的方法
2016/07/15 Python
Python 解析pymysql模块操作数据库的方法
2020/02/18 Python
Django利用elasticsearch(搜索引擎)实现搜索功能
2020/11/26 Python
python中的列表和元组区别分析
2020/12/30 Python
Pandas之缺失数据的实现
2021/01/06 Python
CSS3使用多列制作瀑布流
2016/05/10 HTML / CSS
意大利高端时尚买手店:Stefania Mode
2018/03/01 全球购物
Zavvi西班牙:电子游戏、极客服装、Blu-ray、Funko Pop等
2019/05/03 全球购物
印度电子产品购物网站:Vijay Sales
2021/02/16 全球购物
进步之星获奖感言
2014/02/22 职场文书
气象学专业个人求职信
2014/03/15 职场文书
农业开发项目建议书
2014/05/16 职场文书
文明班集体申报材料
2014/05/23 职场文书
交通事故委托书范本(2篇)
2014/09/21 职场文书
2014年污水处理厂工作总结
2014/12/19 职场文书
党员干部学法用法心得体会
2016/01/21 职场文书
Spring中bean的生命周期之getSingleton方法
2021/06/30 Java/Android