# tf.get_static_value

Returns the constant value of the given tensor, if efficiently calculable.

This function attempts to partially evaluate the given tensor, and returns its value as a numpy ndarray if this succeeds.

#### Example usage:

````a = tf.constant(10)`
`tf.get_static_value(a)`
`10`
`b = tf.constant(20)`
`tf.get_static_value(tf.add(a, b))`
`30`
```
````# `tf.Variable` is not supported.`
`c = tf.Variable(30)`
`print(tf.get_static_value(c))`
`None`
```

Using `partial` option is most relevant when calling `get_static_value` inside a `tf.function`. Setting it to `True` will return the results but for the values that cannot be evaluated will be `None`. For example:

``````class Foo:
def __init__(self):
self.a = tf.Variable(1)
self.b = tf.constant(2)

@tf.function
def bar(self, partial):
packed = tf.raw_ops.Pack(values=[self.a, self.b])
static_val = tf.get_static_value(packed, partial=partial)
tf.print(static_val)

f = Foo()
f.bar(partial=True)  # `array([None, array(2, dtype=int32)], dtype=object)`
f.bar(partial=False)  # `None`
``````

Compatibility(V1): If `constant_value(tensor)` returns a non-`None` result, it will no longer be possible to feed a different value for `tensor`. This allows the result of this function to influence the graph that is constructed, and permits static shape optimizations.

`tensor` The Tensor to be evaluated.
`partial` If True, the returned numpy array is allowed to have partially evaluated values. Values that can't be evaluated will be None.

A numpy ndarray containing the constant value of the given `tensor`, or None if it cannot be calculated.

`TypeError` if tensor is not an tensor.Tensor.

[{ "type": "thumb-down", "id": "missingTheInformationINeed", "label":"Missing the information I need" },{ "type": "thumb-down", "id": "tooComplicatedTooManySteps", "label":"Too complicated / too many steps" },{ "type": "thumb-down", "id": "outOfDate", "label":"Out of date" },{ "type": "thumb-down", "id": "samplesCodeIssue", "label":"Samples / code issue" },{ "type": "thumb-down", "id": "otherDown", "label":"Other" }]
[{ "type": "thumb-up", "id": "easyToUnderstand", "label":"Easy to understand" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"Solved my problem" },{ "type": "thumb-up", "id": "otherUp", "label":"Other" }]