input: Write a python function to handle command line argument parsing and validate the arguments.
  assert optParse(['-i', 'input.fa', '-t', 'ens', '-o', 'output.fa']) == ('input.fa', 'ens', None, '', 'output.fa')
  assert optParse(['-i', 'input.fa', '-t', 'ncbi', '-g', 'top.gff', '-o', 'output.fa']) == ('input.fa', 'ncbi', 'top.gff', '', 'output.fa')
  assert optParse(['-i', 'input.fa', '-t', 'ens', '-l', 'species', '-o', 'output.fa']) == ('input.fa', 'ens', None, 'species', 'output.fa')
output: import argparse
  
  def optParse(args):
      parser = argparse.ArgumentParser(description='Process command line arguments.')
      parser.add_argument('-i', '--input', required=True, help='Input file')
      parser.add_argument('-t', '--type', required=True, choices=['ens', 'ncbi'], help='Type of the file')
      parser.add_argument('-g', '--gff', required=False, help='GFF file')
      parser.add_argument('-l', '--label', required=False, help='Label')
      parser.add_argument('-o', '--output', required=True, help='Output file')
  
      parsed_args = parser.parse_args(args)
      
      input_file = parsed_args.input
      file_type = parsed_args.type
      gff_file = parsed_args.gff if parsed_args.gff else None
      label = parsed_args.label if parsed_args.label else ''
      output_file = parsed_args.output
  
      return input_file, file_type, gff_file, label, output_file