parameters: (*args, **kwargs)
return_statement: return ops
docstring: Helper to select operations.
  
    Args:
      *args: list of 1) regular expressions (compiled or not) or  2) (array of)
        tf.Operation. tf.Tensor instances are silently ignored.
      **kwargs: 'graph': tf.Graph in which to perform the regex query.This is
        required when using regex.
        'positive_filter': an elem if selected only if positive_filter(elem) is
          True. This is optional.
        'restrict_ops_regex': a regular expression is ignored if it doesn't start
          with the substring "(?#ops)".
    Returns:
      list of tf.Operation
    Raises:
      TypeError: if the optional keyword argument graph is not a tf.Graph
        or if an argument in args is not an (array of) tf.Operation
        or an (array of) tf.Tensor (silently ignored) or a string
        or a regular expression.
      ValueError: if one of the keyword arguments is unexpected or if a regular
        expression is used without passing a graph as a keyword argument.
docstring_summary: Helper to select operations.
docstring_tokens: Helper to select operations .
function: def select_ops(*args, **kwargs):
    """Helper to select operations.
  
    Args:
      *args: list of 1) regular expressions (compiled or not) or  2) (array of)
        tf.Operation. tf.Tensor instances are silently ignored.
      **kwargs: 'graph': tf.Graph in which to perform the regex query.This is
        required when using regex.
        'positive_filter': an elem if selected only if positive_filter(elem) is
          True. This is optional.
        'restrict_ops_regex': a regular expression is ignored if it doesn't start
          with the substring "(?#ops)".
    Returns:
      list of tf.Operation
    Raises:
      TypeError: if the optional keyword argument graph is not a tf.Graph
        or if an argument in args is not an (array of) tf.Operation
        or an (array of) tf.Tensor (silently ignored) or a string
        or a regular expression.
      ValueError: if one of the keyword arguments is unexpected or if a regular
        expression is used without passing a graph as a keyword argument.
    """
    # get keywords arguments
    graph = None
    positive_filter = None
    restrict_ops_regex = False
    for k, v in iteritems(kwargs):
      if k == "graph":
        graph = v
        if graph is not None and not isinstance(graph, tf_ops.Graph):
          raise TypeError("Expected a tf.Graph, got: {}".format(type(graph)))
      elif k == "positive_filter":
        positive_filter = v
      elif k == "restrict_ops_regex":
        restrict_ops_regex = v
      elif k == "restrict_ts_regex":
        pass
      else:
        raise ValueError("Wrong keywords argument: {}.".format(k))
  
    ops = []
  
    for arg in args:
      if can_be_regex(arg):
        if graph is None:
          raise ValueError("Use the keyword argument 'graph' to use regex.")
        regex = make_regex(arg)
        if regex.pattern.startswith("(?#ts)"):
          continue
        if restrict_ops_regex and not regex.pattern.startswith("(?#ops)"):
          continue
        ops_ = filter_ops_from_regex(graph, regex)
        for op_ in ops_:
          if op_ not in ops:
            if positive_filter is None or positive_filter(op_):
              ops.append(op_)
      else:
        ops_aux = util.make_list_of_op(arg, ignore_ts=True)
        if positive_filter is not None:
          ops_aux = [op for op in ops_aux if positive_filter(op)]
        ops_aux = [op for op in ops_aux if op not in ops]
        ops += ops_aux
  
    return ops
function_tokens: def select_ops ( * args , * * kwargs ) : # get keywords arguments graph = None positive_filter = None restrict_ops_regex = False for k , v in iteritems ( kwargs ) : if k == "graph" : graph = v if graph is not None and not isinstance ( graph , tf_ops . Graph ) : raise TypeError ( "Expected a tf.Graph, got: {}" . format ( type ( graph ) ) ) elif k == "positive_filter" : positive_filter = v elif k == "restrict_ops_regex" : restrict_ops_regex = v elif k == "restrict_ts_regex" : pass else : raise ValueError ( "Wrong keywords argument: {}." . format ( k ) ) ops = [ ] for arg in args : if can_be_regex ( arg ) : if graph is None : raise ValueError ( "Use the keyword argument 'graph' to use regex." ) regex = make_regex ( arg ) if regex . pattern . startswith ( "(?#ts)" ) : continue if restrict_ops_regex and not regex . pattern . startswith ( "(?#ops)" ) : continue ops_ = filter_ops_from_regex ( graph , regex ) for op_ in ops_ : if op_ not in ops : if positive_filter is None or positive_filter ( op_ ) : ops . append ( op_ ) else : ops_aux = util . make_list_of_op ( arg , ignore_ts = True ) if positive_filter is not None : ops_aux = [ op for op in ops_aux if positive_filter ( op ) ] ops_aux = [ op for op in ops_aux if op not in ops ] ops += ops_aux return ops