Assistance Request - Issue with Installing 'pip' despite Python 3.10 Installation

Eryk Sun eryksun at gmail.com
Sat Jun 10 12:32:53 EDT 2023


On 6/10/23, Thomas Passin via Python-list <python-list at python.org> wrote:
>
> We can find pip.exe using good old-fashioned dir (we don't need any
> new-fangled Powershell):
>
> C:\Users\tom>dir AppData\Local\Programs\Python /Aa /S /W /B |find
> "pip"|find "Scripts"

CMD's `dir` and `for` commands support simple wildcard matching. For
example, the following recursively searches for a file named
"pip*.exe" under "%ProgramFiles%\Python311":

    C:\>dir /b /s "%ProgramFiles%\Python311\pip*.exe"
    C:\Program Files\Python311\Scripts\pip.exe
    C:\Program Files\Python311\Scripts\pip3.11.exe
    C:\Program Files\Python311\Scripts\pip3.exe

    C:\>for /r "%ProgramFiles%\Python311" %f in (pip*.exe) do @(echo %f)
    C:\Program Files\Python311\Scripts\pip.exe
    C:\Program Files\Python311\Scripts\pip3.11.exe
    C:\Program Files\Python311\Scripts\pip3.exe

The following recursively searches for a directory named "pip" under
"%ProgramFiles%\Python311:

    C:\>dir /ad /b /s "%ProgramFiles%\Python311\pip"
    C:\Program Files\Python311\Lib\site-packages\pip

Or search for a directory name that starts with "pip":

    C:\>dir /ad /b /s "%ProgramFiles%\Python311\pip*"
    C:\Program Files\Python311\Lib\site-packages\pip
    C:\Program Files\Python311\Lib\site-packages\pip-22.3.1.dist-info
    C:\Program Files\Python311\Lib\site-packages\win32\Demos\pipes

With a recursive `for /r path [/d]` loop, the strings in the set have
to include wildcard characters to actually check for an existing file
or directory, else each string in the set simply gets appended to the
directory names in the recursive walk. For example, the following
recursively searches for a directory (i.e. /d) named "pip*" under
"%ProgramFiles%\Python311":

    C:\>for /r "%ProgramFiles%\Python311" /d %d in (pip*) do @(echo %d)
    C:\Program Files\Python311\Lib\site-packages\pip
    C:\Program Files\Python311\Lib\site-packages\pip-22.3.1.dist-info
    C:\Program Files\Python311\Lib\site-packages\win32\Demos\pipes

To match a specific name, you can filter the matches using an `if`
statement to compare the base filename of the loop variable (i.e.
[n]ame + e[x]tension) with the required name. For example:

    C:\>for /r "%ProgramFiles%\Python311" /d %d in (pip*) do @(
    More? if "%~nxd"=="pip" echo %d)
    C:\Program Files\Python311\Lib\site-packages\pip


More information about the Python-list mailing list