code: def tokenize_string(source):
      
      line_reader = StringIO(source).readline
      token_generator = tokenize.generate_tokens(line_reader)
  
      # Loop over all tokens till a backtick (`) is found.
      # Then, take all tokens till the next backtick to form a backtick quoted
      # string.
      for toknum, tokval, _, _, _ in token_generator:
          if tokval == '`':
              tokval = " ".join(it.takewhile(
                  lambda tokval: tokval != '`',
                  map(operator.itemgetter(1), token_generator)))
              toknum = _BACKTICK_QUOTED_STRING
          yield toknum, tokval
docs: Tokenize a Python source code string.
  
      Parameters
      ----------
      source : str
          A Python source code string