input: Write a function to calculate the Euclidean distance between two points in a multi-dimensional space. The function should take two lists (point1 and point2) representing the coordinates of the points and return the distance between them. If the points have different dimensions, the function should raise a ValueError.
  assert euclidean_distance([1, 2, 3], [4, 5, 6]) == 5.196152422706632
  assert euclidean_distance([0, 0], [0, 0]) == 0.0
  assert euclidean_distance([1, 2], [2, 1]) == 1.4142135623730951
  assert euclidean_distance([1, 2, 3, 4], [5, 6, 7, 8]) == 8.0
  assert euclidean_distance([1, 2], [1, 2, 3]) # Should raise a ValueError
output: def euclidean_distance(point1, point2):
      if len(point1) != len(point2):
          raise ValueError("Points have different dimensions")
      return sum((x - y) ** 2 for x, y in zip(point1, point2)) ** 0.5