parameters: (string_list, shuffle=False, seed=None, num_epochs=None)
docstring: Returns an op that seeks the next element in a list of strings.
  
    Seeking happens in a round robin fashion. This op creates a variable called
    obtain_next_counter that is initialized to -1 and is used to keep track of
    which element in the list was returned, and a variable
    obtain_next_expanded_list to hold the list. If num_epochs is not None, then we
    limit the number of times we go around the string_list before OutOfRangeError
    is thrown. It creates a variable to keep track of this.
  
    Args:
      string_list: A list of strings.
      shuffle: If true, we shuffle the string_list differently for each epoch.
      seed: Seed used for shuffling.
      num_epochs: Returns OutOfRangeError once string_list has been repeated
                  num_epoch times. If unspecified then keeps on looping.
  
    Returns:
      An op that produces the next element in the provided list.
docstring_summary: Returns an op that seeks the next element in a list of strings.
docstring_tokens: Returns an op that seeks the next element in a list of strings .
function: def seek_next(string_list, shuffle=False, seed=None, num_epochs=None):
    """Returns an op that seeks the next element in a list of strings.
  
    Seeking happens in a round robin fashion. This op creates a variable called
    obtain_next_counter that is initialized to -1 and is used to keep track of
    which element in the list was returned, and a variable
    obtain_next_expanded_list to hold the list. If num_epochs is not None, then we
    limit the number of times we go around the string_list before OutOfRangeError
    is thrown. It creates a variable to keep track of this.
  
    Args:
      string_list: A list of strings.
      shuffle: If true, we shuffle the string_list differently for each epoch.
      seed: Seed used for shuffling.
      num_epochs: Returns OutOfRangeError once string_list has been repeated
                  num_epoch times. If unspecified then keeps on looping.
  
    Returns:
      An op that produces the next element in the provided list.
    """
    expanded_list = _create_list(string_list, shuffle, seed, num_epochs)
  
    with variable_scope.variable_scope("obtain_next"):
      counter = variable_scope.get_variable(
          name="obtain_next_counter",
          initializer=constant_op.constant(
              -1, dtype=dtypes.int64),
          dtype=dtypes.int64)
      with ops.colocate_with(counter):
        string_tensor = variable_scope.get_variable(
            name="obtain_next_expanded_list",
            initializer=constant_op.constant(expanded_list),
            dtype=dtypes.string)
      if num_epochs:
        filename_counter = variable_scope.get_variable(
            name="obtain_next_filename_counter",
            initializer=constant_op.constant(
                0, dtype=dtypes.int64),
            dtype=dtypes.int64)
        c = filename_counter.count_up_to(len(expanded_list))
        with ops.control_dependencies([c]):
          return obtain_next(string_tensor, counter)
      else:
        return obtain_next(string_tensor, counter)
function_tokens: def seek_next ( string_list , shuffle = False , seed = None , num_epochs = None ) : expanded_list = _create_list ( string_list , shuffle , seed , num_epochs ) with variable_scope . variable_scope ( "obtain_next" ) : counter = variable_scope . get_variable ( name = "obtain_next_counter" , initializer = constant_op . constant ( - 1 , dtype = dtypes . int64 ) , dtype = dtypes . int64 ) with ops . colocate_with ( counter ) : string_tensor = variable_scope . get_variable ( name = "obtain_next_expanded_list" , initializer = constant_op . constant ( expanded_list ) , dtype = dtypes . string ) if num_epochs : filename_counter = variable_scope . get_variable ( name = "obtain_next_filename_counter" , initializer = constant_op . constant ( 0 , dtype = dtypes . int64 ) , dtype = dtypes . int64 ) c = filename_counter . count_up_to ( len ( expanded_list ) ) with ops . control_dependencies ( [ c ] ) : return obtain_next ( string_tensor , counter ) else : return obtain_next ( string_tensor , counter )