提交 84d1859f authored 作者: Olivier Breuleux's avatar Olivier Breuleux

improved error messages

上级 52080345
...@@ -21,6 +21,7 @@ def as_scalar(x, name = None): ...@@ -21,6 +21,7 @@ def as_scalar(x, name = None):
return s return s
if isinstance(x, Scalar): if isinstance(x, Scalar):
return x return x
raise TypeError("Cannot convert %s to Scalar" % x)
def constant(x): def constant(x):
res = as_scalar(x) res = as_scalar(x)
......
...@@ -316,12 +316,16 @@ def astensor(data, broadcastable=None, name=None): ...@@ -316,12 +316,16 @@ def astensor(data, broadcastable=None, name=None):
if data is None and broadcastable is None: if data is None and broadcastable is None:
raise TypeError("Cannot make a Tensor out of None.") raise TypeError("Cannot make a Tensor out of None.")
_data = data
data = numpy.asarray(data) data = numpy.asarray(data)
if broadcastable is None: if broadcastable is None:
broadcastable = [s==1 for s in data.shape] broadcastable = [s==1 for s in data.shape]
elif broadcastable in [0, 1]: elif broadcastable in [0, 1]:
broadcastable = [broadcastable] * len(data.shape) broadcastable = [broadcastable] * len(data.shape)
try:
rval = Tensor(data.dtype, broadcastable, name = name) rval = Tensor(data.dtype, broadcastable, name = name)
except TypeError:
raise TypeError("Cannot convert %s to Tensor." % _data)
rval.data = data # will raise if broadcastable was mis-specified rval.data = data # will raise if broadcastable was mis-specified
return rval return rval
s2t.astensor = astensor s2t.astensor = astensor
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论