[doc] Update references to NumPy (GH-22458)



Numeric(al) Python to NumPy. It seems the old name hasn't been used for some time.
diff --git a/Doc/library/array.rst b/Doc/library/array.rst
index 7802073..ff3ec6b 100644
--- a/Doc/library/array.rst
+++ b/Doc/library/array.rst
@@ -257,7 +257,6 @@
       Packing and unpacking of External Data Representation (XDR) data as used in some
       remote procedure call systems.
 
-   `The Numerical Python Documentation <https://docs.scipy.org/doc/>`_
-      The Numeric Python extension (NumPy) defines another array type; see
-      http://www.numpy.org/ for further information about Numerical Python.
+   `NumPy <https://numpy.org/>`_
+      The NumPy package defines another array type.
 
diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst
index 7543fc4..c49bb0c 100644
--- a/Doc/library/functions.rst
+++ b/Doc/library/functions.rst
@@ -1512,14 +1512,12 @@
 .. class:: slice(stop)
            slice(start, stop[, step])
 
-   .. index:: single: Numerical Python
-
    Return a :term:`slice` object representing the set of indices specified by
    ``range(start, stop, step)``.  The *start* and *step* arguments default to
    ``None``.  Slice objects have read-only data attributes :attr:`~slice.start`,
    :attr:`~slice.stop` and :attr:`~slice.step` which merely return the argument
    values (or their default).  They have no other explicit functionality;
-   however they are used by Numerical Python and other third party extensions.
+   however they are used by NumPy and other third party packages.
    Slice objects are also generated when extended indexing syntax is used.  For
    example: ``a[start:stop:step]`` or ``a[start:stop, i]``.  See
    :func:`itertools.islice` for an alternate version that returns an iterator.