tf.data.experimental.Optional
Wraps a value that may/may not be present at runtime.
An Optional
can represent the result of an operation that may fail as a value, rather than raising an exception and halting execution. For example, tf.data.experimental.get_next_as_optional
returns an Optional
that either contains the next value from a tf.compat.v1.data.Iterator
if one exists, or a "none" value that indicates the end of the sequence has been reached.
Optional
can only be used by values that are convertible to Tensor
or CompositeTensor
.
Attributes | |
---|---|
value_structure | The structure of the components of this optional. |
Methods
from_value
@staticmethod from_value( value )
Returns an Optional
that wraps the given value.
Args | |
---|---|
value | A value to wrap. The value must be convertible to Tensor or CompositeTensor . |
Returns | |
---|---|
An Optional that wraps value . |
get_value
@abc.abstractmethod get_value( name=None )
Returns the value wrapped by this optional.
If this optional does not have a value (i.e. self.has_value()
evaluates to False
), this operation will raise tf.errors.InvalidArgumentError
at runtime.
Args | |
---|---|
name | (Optional.) A name for the created operation. |
Returns | |
---|---|
The wrapped value. |
has_value
@abc.abstractmethod has_value( name=None )
Returns a tensor that evaluates to True
if this optional has a value.
Args | |
---|---|
name | (Optional.) A name for the created operation. |
Returns | |
---|---|
A scalar tf.Tensor of type tf.bool . |
none_from_structure
@staticmethod none_from_structure( value_structure )
Returns an Optional
that has no value.
Note: This method takes an argument that defines the structure of the value that would be contained in the returned Optional
if it had a value.
Args | |
---|---|
value_structure | A Structure object representing the structure of the components of this optional. |
Returns | |
---|---|
An Optional that has no value. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/data/experimental/Optional