Merge pull request #40674 from lgeiger:numpy-tostring
PiperOrigin-RevId: 317735359 Change-Id: Ia8fe2425b21411aa2d26f7728e3c70d550fecb9a
This commit is contained in:
commit
7a6c2f69d4
|
@ -525,7 +525,7 @@ def make_tensor_proto(values, dtype=None, shape=None, verify_shape=False,
|
||||||
if nparray.size * nparray.itemsize >= (1 << 31):
|
if nparray.size * nparray.itemsize >= (1 << 31):
|
||||||
raise ValueError(
|
raise ValueError(
|
||||||
"Cannot create a tensor proto whose content is larger than 2GB.")
|
"Cannot create a tensor proto whose content is larger than 2GB.")
|
||||||
tensor_proto.tensor_content = nparray.tostring()
|
tensor_proto.tensor_content = nparray.tobytes()
|
||||||
return tensor_proto
|
return tensor_proto
|
||||||
|
|
||||||
# If we were not given values as a numpy array, compute the proto_values
|
# If we were not given values as a numpy array, compute the proto_values
|
||||||
|
|
|
@ -84,22 +84,22 @@ class DecodeRawOpTest(test.TestCase):
|
||||||
def testToFloat16(self):
|
def testToFloat16(self):
|
||||||
result = np.matrix([[1, -2, -3, 4]], dtype="<f2")
|
result = np.matrix([[1, -2, -3, 4]], dtype="<f2")
|
||||||
self.assertAllEqual(
|
self.assertAllEqual(
|
||||||
result, parsing_ops.decode_raw([result.tostring()], dtypes.float16))
|
result, parsing_ops.decode_raw([result.tobytes()], dtypes.float16))
|
||||||
|
|
||||||
def testToBool(self):
|
def testToBool(self):
|
||||||
result = np.matrix([[True, False, False, True]], dtype="<b1")
|
result = np.matrix([[True, False, False, True]], dtype="<b1")
|
||||||
self.assertAllEqual(
|
self.assertAllEqual(result,
|
||||||
result, parsing_ops.decode_raw([result.tostring()], dtypes.bool))
|
parsing_ops.decode_raw([result.tobytes()], dtypes.bool))
|
||||||
|
|
||||||
def testToComplex64(self):
|
def testToComplex64(self):
|
||||||
result = np.matrix([[1 + 1j, 2 - 2j, -3 + 3j, -4 - 4j]], dtype="<c8")
|
result = np.matrix([[1 + 1j, 2 - 2j, -3 + 3j, -4 - 4j]], dtype="<c8")
|
||||||
self.assertAllEqual(
|
self.assertAllEqual(
|
||||||
result, parsing_ops.decode_raw([result.tostring()], dtypes.complex64))
|
result, parsing_ops.decode_raw([result.tobytes()], dtypes.complex64))
|
||||||
|
|
||||||
def testToComplex128(self):
|
def testToComplex128(self):
|
||||||
result = np.matrix([[1 + 1j, 2 - 2j, -3 + 3j, -4 - 4j]], dtype="<c16")
|
result = np.matrix([[1 + 1j, 2 - 2j, -3 + 3j, -4 - 4j]], dtype="<c16")
|
||||||
self.assertAllEqual(
|
self.assertAllEqual(
|
||||||
result, parsing_ops.decode_raw([result.tostring()], dtypes.complex128))
|
result, parsing_ops.decode_raw([result.tobytes()], dtypes.complex128))
|
||||||
|
|
||||||
def testEmptyStringInput(self):
|
def testEmptyStringInput(self):
|
||||||
for num_inputs in range(3):
|
for num_inputs in range(3):
|
||||||
|
|
|
@ -295,7 +295,7 @@ class ndarray(composite_tensor.CompositeTensor): # pylint: disable=invalid-name
|
||||||
# TODO(wangpeng): Handle graph mode
|
# TODO(wangpeng): Handle graph mode
|
||||||
if not isinstance(self.data, ops.EagerTensor):
|
if not isinstance(self.data, ops.EagerTensor):
|
||||||
raise TypeError('Indexing using symbolic tensor is not allowed')
|
raise TypeError('Indexing using symbolic tensor is not allowed')
|
||||||
return np.asscalar(self.data.numpy())
|
return self.data.numpy().item()
|
||||||
|
|
||||||
def tolist(self):
|
def tolist(self):
|
||||||
return self.data.numpy().tolist()
|
return self.data.numpy().tolist()
|
||||||
|
|
Loading…
Reference in New Issue