title: See def __str__(self): in the code below. It does not influence on the output, but should. Expect assistance
body: <p>import random</p>
  
  <p>class Server:
      def <strong>init</strong>(self):
          """Creates a new server instance, with no active connections."""
          self.connections = {}</p>
  
  <pre><code>def add_connection(self, connection_id):
      """Adds a new connection to this server."""
      connection_load = random.random()*10+1
      # Add the connection to the dictionary with the calculated load
      if connection_id != None:
       self.connections[connection_id] = connection_load
  
  def close_connection(self, connection_id):
      """Closes a connection on this server."""
      # Remove the connection from the dictionary
      if connection_id != None:
          del self.connections[connection_id]
  
  def load(self):
      """Calculates the current load for all connections."""
      total = 0
      # Add up the load for each of the connections
      for user in self.connections:
          total += self.connections[user]
      return total
  
  def __str__(self):
      """Returns a string with the current load of the server"""
      return "{:.2f}%".format(self.load())
  </code></pre>
  
  <p>server = Server()
  server.add_connection("192.168.1.1")</p>
  
  <p>print(server.load())      </p>
  
  <p>server.close_connection("192.168.1.1")
  print(server.load())</p>