Skip to main content
 首页 » 编程设计

Python类属性报错AttributeError : can't set attribute

2025年05月04日23lori

class DockerEngine(Device): 
 
  def __init__(self): 
      super(DockerInfo, self).__init__() 
      self.docker_id = None 
      self.host_ip_address = None 
      self.total_containers = 0 
      self.running_containers = 0 
      self.paused_containers = 0 
      self.stopped_containers = 0 
 
  @property 
  def host_ip_address(self): 
      return self._host_ip_address 
 
  @host_ip_address.setter 
  def host_it_address(self, ip): 
      self._host_ip_address = ip 
 
  @property 
  def docker_id(self): 
      return self._docker_id 
 
  @docker_id.setter 
  def docker_id(self, id): 
      self._docker_id = id 

当我初始化一个 DockerEngine 对象时,它提示说在 __init__ self.host_ip_address 中,无法设置属性。

请您参考如下方法:

你的代码有错字

将host_it_address更改为host_ip_address.

@host_ip_address.setter 
def host_it_address(self, ip): <--- WRONG FUNCTION NAME 
    self._host_ip_address = ip