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 Tkinter GUI编程入门介绍
Mar 10 Python
把MySQL表结构映射为Python中的对象的教程
Apr 07 Python
Python爬取当当、京东、亚马逊图书信息代码实例
Dec 09 Python
Python批量合并有合并单元格的Excel文件详解
Apr 05 Python
python3爬虫学习之数据存储txt的案例详解
Apr 24 Python
Python程序打包工具py2exe和PyInstaller详解
Jun 28 Python
python如何爬取动态网站
Sep 09 Python
Scrapy中如何向Spider传入参数的方法实现
Sep 28 Python
如何在 Matplotlib 中更改绘图背景的实现
Nov 26 Python
python中@contextmanager实例用法
Feb 07 Python
Python+Appium实现自动抢微信红包
May 21 Python
教你如何用Python实现人脸识别(含源代码)
Jun 23 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生成不同颜色、不同大小的tag标签函数
2013/09/23 PHP
学习php设计模式 php实现适配器模式
2015/12/07 PHP
Javascript String对象扩展HTML编码和解码的方法
2009/06/02 Javascript
利用WebBrowser彻底解决Web打印问题(包括后台打印)
2009/06/22 Javascript
js调用activeX获取u盘序列号的代码
2011/11/21 Javascript
ExtJS4 Grid改变单元格背景颜色及Column render学习
2013/02/06 Javascript
javascript上传图片前预览图片兼容大多数浏览器
2013/10/25 Javascript
jquery实现个人中心导航菜单效果和美观都非常不错
2014/09/02 Javascript
JavaScript组合拼接字符串的效率对比测试
2014/11/06 Javascript
jQuery图片切换动画特效
2016/11/02 Javascript
angular2+nodejs实现图片上传功能
2017/03/27 NodeJs
微信小程序 es6-promise.js封装请求与处理异步进程
2017/06/12 Javascript
vue父组件通过props如何向子组件传递方法详解
2017/08/16 Javascript
javascript中的replace函数(带注释demo)
2018/01/07 Javascript
jQuery实现的淡入淡出图片轮播效果示例
2018/08/29 jQuery
在create-react-app中使用sass的方法示例
2018/10/01 Javascript
[04:30]显微镜下的DOTA2第五期——拉比克
2013/09/26 DOTA
python 多线程实现检测服务器在线情况
2015/11/25 Python
Python操作使用MySQL数据库的实例代码
2017/05/25 Python
python引入导入自定义模块和外部文件的实例
2017/07/24 Python
Python编程求解二叉树中和为某一值的路径代码示例
2018/01/04 Python
基于python实现学生管理系统
2018/10/17 Python
对Python使用mfcc的两种方式详解
2019/01/09 Python
Python Django给admin添加Action的方法实例详解
2019/04/29 Python
Python 内置变量和函数的查看及说明介绍
2019/12/25 Python
Numpy 理解ndarray对象的示例代码
2020/04/03 Python
Python中logging日志的四个等级和使用
2020/11/17 Python
用python-webdriver实现自动填表的示例代码
2021/01/13 Python
pytorch __init__、forward与__call__的用法小结
2021/02/27 Python
师范生个人推荐信
2013/11/29 职场文书
低碳生活倡议书
2014/04/14 职场文书
2014年幼儿园小班工作总结
2014/12/04 职场文书
毕业证明模板
2015/06/19 职场文书
mysql优化之query_cache_limit参数说明
2021/07/01 MySQL
SSM VUE Axios详解
2021/10/05 Vue.js
vue使用element-ui按需引入
2022/05/20 Vue.js