diff options
Diffstat (limited to 'numpy')
-rw-r--r-- | numpy/lib/index_tricks.py | 4 | ||||
-rw-r--r-- | numpy/lib/tests/test_index_tricks.py | 4 |
2 files changed, 7 insertions, 1 deletions
diff --git a/numpy/lib/index_tricks.py b/numpy/lib/index_tricks.py index 852c5f6fd..15a1a559d 100644 --- a/numpy/lib/index_tricks.py +++ b/numpy/lib/index_tricks.py @@ -535,7 +535,9 @@ class ndindex(object): # Fixing nditer would be more work but should be done eventually, # and then this entire __new__ method can be removed. def __new__(cls, *shape): - if len(shape) == 0 or (len(shape) == 1 and len(shape[0]) == 0): + if len(shape) == 1 and isinstance(shape[0], tuple): + shape = shape[0] + if len(shape) == 0: class zero_dim_iter(object): def __init__(self): self._N = 1 diff --git a/numpy/lib/tests/test_index_tricks.py b/numpy/lib/tests/test_index_tricks.py index 43160ffb7..a6e65ef56 100644 --- a/numpy/lib/tests/test_index_tricks.py +++ b/numpy/lib/tests/test_index_tricks.py @@ -245,6 +245,10 @@ def test_ndindex(): x = list(np.ndindex((1, 2, 3))) assert_array_equal(x, expected) + # Test use of scalars and tuples + x = list(np.ndindex((3,))) + assert_array_equal(x, list(np.ndindex(3))) + # Make sure size argument is optional x = list(np.ndindex()) assert_equal(x, [()]) |