提交 e5f414f4 authored 作者: abergeron's avatar abergeron

Merge pull request #4076 from nouiz/eval

Don't call eval
...@@ -1610,13 +1610,13 @@ def int_or_true_div(x_discrete, y_discrete): ...@@ -1610,13 +1610,13 @@ def int_or_true_div(x_discrete, y_discrete):
"please use x // y for an integer division.", "please use x // y for an integer division.",
DeprecationWarning, DeprecationWarning,
stacklevel=4) stacklevel=4)
return 'int' return int_div
elif config.int_division == 'floatX': elif config.int_division == 'floatX':
return 'true' return true_div
else: else:
raise NotImplementedError(config.int_division) raise NotImplementedError(config.int_division)
else: else:
return 'true' return true_div
def div_proxy(x, y): def div_proxy(x, y):
...@@ -1624,8 +1624,8 @@ def div_proxy(x, y): ...@@ -1624,8 +1624,8 @@ def div_proxy(x, y):
Proxy for either true_div or int_div, depending on types of x, y. Proxy for either true_div or int_div, depending on types of x, y.
""" """
f = eval('%s_div' % int_or_true_div(as_scalar(x).type in discrete_types, f = int_or_true_div(as_scalar(x).type in discrete_types,
as_scalar(y).type in discrete_types)) as_scalar(y).type in discrete_types)
return f(x, y) return f(x, y)
......
...@@ -3225,10 +3225,13 @@ def minimum(x, y): ...@@ -3225,10 +3225,13 @@ def minimum(x, y):
def div_proxy(x, y): def div_proxy(x, y):
"""Proxy for either true_div or int_div, depending on types of x, y.""" """Proxy for either true_div or int_div, depending on types of x, y."""
f = eval('%s_div' % scal.int_or_true_div( f = scal.int_or_true_div(
as_tensor_variable(x).dtype in discrete_dtypes, as_tensor_variable(x).dtype in discrete_dtypes,
as_tensor_variable(y).dtype in discrete_dtypes)) as_tensor_variable(y).dtype in discrete_dtypes)
return f(x, y) if f is scal.int_div:
return int_div(x, y)
else:
return true_div(x, y)
def divmod(x, y): def divmod(x, y):
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论