I have noticed that on Windows, conda environments provide python.exe
but not python3.exe
nor python3.N.exe
(where N is the minor version of cpython). This is different from Unixy operating systems, where all three of python
, python3
, and python3.N
are provided.
When the outer context provides python3.exe
and/or python3.N.exe
, this leads to confusing, hard-to-debug situations where programs get different base versions of the language and/or different sets of available libraries depending on which of “python”, “python3”, “python3.N” you happen to use to start them. For example, pytest
seems to prefer python3
to python
when both are available, even if it’s been installed via conda, and thus tests inexplicably get run using the outer context instead of the conda environment you wanted.
Is there a configuration knob somewhere that will cause conda create
to install python3.exe
and python3.N.exe
as well as the unqualified python.exe
? Failing that, can anyone suggest a workaround? I am reluctant to start messing around manually with the contents of %CONDA_PREFIX%
but I will if I have to…
(If it matters, I’m using miniconda.)