编辑这个页面须要登录或更高权限!

Python delattr() 使用方法及示例

Python 内置函数

delattr()从对象中删除属性(如果对象允许)。

delattr()的语法为:

delattr(object, name)

delattr()参数

delattr()具有两个参数:

  • object-要从中删除name属性的对象

  • name-一个字符串,必须是要从object中删除的属性的名称

delattr()返回值

delattr()不返回任何值(返回None)。它仅删除属性(如果对象允许)。

示例1:delattr()如何工作?

class Coordinate:
  x = 10
  y = -5
  z = 0

point1 = Coordinate() 

print('x = ',point1.x)
print('y = ',point1.y)
print('z = ',point1.z)

delattr(Coordinate, 'z')

print('--删除z属性后--')
print('x = ',point1.x)
print('y = ',point1.y)

# 引发错误
print('z = ',point1.z)

运行该程序时,输出为:

x =  10
y =  -5
z =  0
--删除z属性后--
x =  10
y =  -5
Traceback (most recent call last):
  File "python", line 19, in <module>
AttributeError: 'Coordinate' object has no attribute 'z'

在这里,使用delattr(Coordinate,'z')将属性z从Coordinate类中删除。

示例2:使用del运算符删除属性

您还可以使用del运算符删除对象的属性。

class Coordinate:
  x = 10
  y = -5
  z = 0

point1 = Coordinate() 

print('x = ',point1.x)
print('y = ',point1.y)
print('z = ',point1.z)

# 删除属性z
del Coordinate.z

print('--删除z属性后--')
print('x = ',point1.x)
print('y = ',point1.y)

# 引发属性错误
print('z = ',point1.z)

该程序的输出将与上面相同。

Python 内置函数

Python 基础教程
Python 流程控制
Python 函数
Python 数据类型
Python 文件操作
Python 对象和类
Python 日期和时间
Python 高级知识
Python 参考手册