当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python delattr()用法及代码示例


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

用法:

delattr(object, name)

参数:

delattr() 有两个参数:

  • object- 来自的对象name属性将被删除
  • name- 一个字符串,它必须是要从object

返回:

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('--After deleting z attribute--')
print('x = ',point1.x)
print('y = ',point1.y)

# Raises Error
print('z = ',point1.z)

输出

x =  10
y =  -5
z =  0
--After deleting z attribute--
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') 将属性 zCoordinate 类中删除。

示例 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)

# Deleting attribute z
del Coordinate.z

print('--After deleting z attribute--')
print('x = ',point1.x)
print('y = ',point1.y)

# Raises Attribute Error
print('z = ',point1.z)

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

相关用法


注:本文由纯净天空筛选整理自 Python delattr()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。