summaryrefslogtreecommitdiff
path: root/numpy/lib/function_base.py
diff options
context:
space:
mode:
Diffstat (limited to 'numpy/lib/function_base.py')
-rw-r--r--numpy/lib/function_base.py9
1 files changed, 4 insertions, 5 deletions
diff --git a/numpy/lib/function_base.py b/numpy/lib/function_base.py
index a70f74f60..9176d9950 100644
--- a/numpy/lib/function_base.py
+++ b/numpy/lib/function_base.py
@@ -3110,15 +3110,14 @@ def add_newdoc(place, obj, doc):
that the docstrings were changed.
"""
try:
- new = {}
- exec('from %s import %s' % (place, obj), new)
+ new = getattr(__import__(place, globals(), {}, [obj]), obj)
if isinstance(doc, str):
- add_docstring(new[obj], doc.strip())
+ add_docstring(new, doc.strip())
elif isinstance(doc, tuple):
- add_docstring(getattr(new[obj], doc[0]), doc[1].strip())
+ add_docstring(getattr(new, doc[0]), doc[1].strip())
elif isinstance(doc, list):
for val in doc:
- add_docstring(getattr(new[obj], val[0]), val[1].strip())
+ add_docstring(getattr(new, val[0]), val[1].strip())
except:
pass