nodes: 0, module; 1, function_definition; 2, function_name:glob; 3, parameters; 4, block; 5, identifier:self; 6, expression_statement; 7, expression_statement; 8, comment:# Sort globbed files by tuple (filename, extension); 9, return_statement; 10, comment:"""Returns a sorted glob of files belonging to a given problem"""; 11, assignment; 12, call; 13, identifier:file_glob; 14, call; 15, identifier:sorted; 16, argument_list; 17, attribute; 18, argument_list; 19, identifier:file_glob; 20, keyword_argument; 21, identifier:glob; 22, identifier:glob; 23, call; 24, identifier:key; 25, lambda; 26, attribute; 27, argument_list; 28, lambda_parameters; 29, call; 30, identifier:BASE_NAME; 31, identifier:format; 32, string; 33, attribute; 34, string; 35, string; 36, identifier:f; 37, attribute; 38, argument_list; 39, string_content:*; 40, identifier:self; 41, identifier:num; 42, string_content:*; 43, string_content:.*; 44, attribute; 45, identifier:splitext; 46, identifier:f; 47, identifier:os; 48, identifier:path
code: def glob(self):
          """Returns a sorted glob of files belonging to a given problem"""
          file_glob = glob.glob(BASE_NAME.format('*', self.num, '*', '.*'))
  
          # Sort globbed files by tuple (filename, extension)
          return sorted(file_glob, key=lambda f: os.path.splitext(f))