nodes: 0, module; 1, function_definition; 2, function_name:_get_cache_key; 3, parameters; 4, block; 5, identifier:self; 6, expression_statement; 7, expression_statement; 8, expression_statement; 9, expression_statement; 10, for_statement; 11, return_statement; 12, comment:"""
          The cache key is a string of concatenated sorted names and values.
          """; 13, assignment; 14, call; 15, assignment; 16, identifier:key; 17, identifier:keys; 18, block; 19, call; 20, identifier:keys; 21, call; 22, attribute; 23, argument_list; 24, identifier:cache_key; 25, call; 26, if_statement; 27, attribute; 28, argument_list; 29, identifier:list; 30, argument_list; 31, identifier:keys; 32, identifier:sort; 33, identifier:str; 34, argument_list; 35, boolean_operator; 36, block; 37, call; 38, identifier:hexdigest; 39, call; 40, boolean_operator; 41, comparison_operator:key != "sk"; 42, expression_statement; 43, attribute; 44, argument_list; 45, attribute; 46, argument_list; 47, comparison_operator:key != "api_sig"; 48, comparison_operator:key != "api_key"; 49, identifier:key; 50, string:"sk"; 51, augmented_assignment; 52, identifier:hashlib; 53, identifier:sha1; 54, call; 55, attribute; 56, identifier:keys; 57, identifier:key; 58, string:"api_sig"; 59, identifier:key; 60, string:"api_key"; 61, identifier:cache_key; 62, binary_operator:key + self.params[key]; 63, attribute; 64, argument_list; 65, identifier:self; 66, identifier:params; 67, identifier:key; 68, subscript; 69, identifier:cache_key; 70, identifier:encode; 71, string:"utf-8"; 72, attribute; 73, identifier:key; 74, identifier:self; 75, identifier:params
code: def _get_cache_key(self):
          """
          The cache key is a string of concatenated sorted names and values.
          """
  
          keys = list(self.params.keys())
          keys.sort()
  
          cache_key = str()
  
          for key in keys:
              if key != "api_sig" and key != "api_key" and key != "sk":
                  cache_key += key + self.params[key]
  
          return hashlib.sha1(cache_key.encode("utf-8")).hexdigest()