input: 
  def move_zeroes(lst):
      """ Moves all zeroes in a list to the end of the list while maintaining the order of non-zero elements.
      >>> move_zeroes([3, 0, 1, 0, 5, 0, 2])
      [3, 1, 5, 2, 0, 0, 0]
      >>> move_zeroes([0, 0, 0, 1, 2, 3])
      [1, 2, 3, 0, 0, 0]
      """
      non_zeroes = [num for num in lst if num != 0]
      zeroes = [0] * (len(lst) - len(non_zeroes))
      return non_zeroes + zeroes
  
output:     non_zeroes = [num for num in lst if num != 0]
      zeroes = [0] * (len(lst) - len(non_zeroes))
      return non_zeroes + zeroes