美文网首页
Python内置函数delattr()

Python内置函数delattr()

作者: 简书冷雨 | 来源:发表于2017-09-15 09:52 被阅读0次

    delattr(object, name)

    参数 object 是一个对象,参数 name 是一个字符串,函数的功能是删除对象 object 中名为 name 的属性。如 delattr(x,'foobar') 相当于删除对象 x 的 foobar 属性(即删除 x.foobar)。

    示例

    >>> class A:
    ...     def __init__(self, name):
    ...             self.name = name
    ...     def print_name(self):
    ...             print(self.name)
    ... 
    >>> a = A('Tim')
    >>> a.name
    'Tim'
    >>> delattr(a, 'age')  # 尝试删除一个不存在的属性 age
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    AttributeError: age
    >>> 
    >>> 
    >>> delattr(a, 'name')  # 删除属性 name
    >>> a.name  # 再次调用该属性时,提示“对象 x 不存在属性 name”错误
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    AttributeError: 'A' object has no attribute 'name'
    >>> 
    
    

    相关文章

      网友评论

          本文标题:Python内置函数delattr()

          本文链接:https://www.haomeiwen.com/subject/faudsxtx.html