input: Write a function to create a class named ComplexNumber in Python to represent a complex number. The class should have an initializer that accepts two parameters, real and imaginary, and a __str__ method that returns the complex number in the format "(real + imaginary i)".
  assert ComplexNumber(3, 4).__str__()=="(3 + 4i)"
  assert ComplexNumber(-2, 5).__str__()=="(-2 + 5i)"
  assert ComplexNumber(0, 0).__str__()=="(0 + 0i)"
  assert ComplexNumber(1, -1).__str__()=="(1 + -1i)"
  assert ComplexNumber(-3, -4).__str__()=="(-3 + -4i)"
output: class ComplexNumber:
      def __init__(self, real, imaginary):
          self.real = real
          self.imaginary = imaginary
  
      def __str__(self):
          return f"({self.real} + {self.imaginary}i)"