input: Write a function to create a class in Python that represents a complex number, including an initializer that takes in the real and imaginary parts, and a method to return the string representation of the complex number.
  class ComplexNumber:
      def __init__(self, real, imaginary):
          self.real = real
          self.imaginary = imaginary
  
      def __str__(self):
          return "({0} + {1}i)".format(self.real, self.imaginary)
  
  assert str(ComplexNumber(3, 4))=="(3 + 4i)"
  assert str(ComplexNumber(-1, 5))=="(-1 + 5i)"
  assert str(ComplexNumber(0, 0))=="(0 + 0i)"
  assert str(ComplexNumber(7, -2))=="(7 + -2i)"
output: class ComplexNumber:
      def __init__(self, real, imaginary):
          self.real = real
          self.imaginary = imaginary
  
      def __str__(self):
          return "({0} + {1}i)".format(self.real, self.imaginary)