input: Write a function to format a two-dimensional array as a table. The function should take a 2D array as input and print it out in a formatted table where each column is aligned by its width. If the array is empty, it should print an empty line.
  
  def printTable(array):
      if not array:
          print()
          return
      col_width = [max(len(str(x)) for x in col) for col in zip(*array)]
      for row in array:
          print("  ".join(str(x).ljust(col_width[i]) for i, x in enumerate(row)))
  
  assert printTable([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) == None  # Output should be a formatted table
  assert printTable([[11, 2, 322], [4, 45, 6], [73, 811, 9]]) == None  # Output should be a formatted table
  assert printTable([]) == None  # Output should be an empty line
  assert printTable([[1], [2]]) == None  # Output should be a formatted table with one column
  assert printTable([[1111, 2], [3, 4444]]) == None  # Output should be a formatted table with adjusted column widths
output: def printTable(array):
      if not array:
          print()
          return
      col_width = [max(len(str(x)) for x in col) for col in zip(*array)]
      for row in array:
          print("  ".join(str(x).ljust(col_width[i]) for i, x in enumerate(row)))