code: def read_list(path_in):
      
      with open(path_in) as fin:
          while True:
              line = fin.readline()
              if not line:
                  break
              line = [i.strip() for i in line.strip().split('\t')]
              line_len = len(line)
              # check the data format of .lst file
              if line_len < 3:
                  print('lst should have at least has three parts, but only has %s parts for %s' % (line_len, line))
                  continue
              try:
                  item = [int(line[0])] + [line[-1]] + [float(i) for i in line[1:-1]]
              except Exception as e:
                  print('Parsing lst met error for %s, detail: %s' % (line, e))
                  continue
              yield item
docs: Reads the .lst file and generates corresponding iterator.
      Parameters
      ----------
      path_in: string
      Returns
      -------
      item iterator that contains information in .lst file