input: Write a function to generate a Python class that represents a 3D Vector with attributes for x, y, and z coordinates. The class should include an initialization method to set these attributes and a string representation method to return the vector in the form "(x, y, z)".
  
  class Vector3D:
      def __init__(self, x, y, z):
          self.x = x
          self.y = y
          self.z = z
      
      def __str__(self):
          return "(" + str(self.x) + ", " + str(self.y) + ", " + str(self.z) + ")"
  
  assert str(Vector3D(1, 2, 3))=="(1, 2, 3)"
  assert str(Vector3D(0, 0, 0))=="(0, 0, 0)"
  assert str(Vector3D(-1, -2, -3))=="(-1, -2, -3)"
  assert str(Vector3D(4.5, 6.7, 8.9))=="(4.5, 6.7, 8.9)"
  assert str(Vector3D(10, -10, 10))=="(10, -10, 10)"
output: class Vector3D:
      def __init__(self, x, y, z):
          self.x = x
          self.y = y
          self.z = z
      
      def __str__(self):
          return "(" + str(self.x) + ", " + str(self.y) + ", " + str(self.z) + ")"