Upgrade to python 3.8 using conda
Master System Design with Codemia
Enhance your system design skills with over 120 practice problems, detailed solutions, and hands-on exercises.
Introduction
If you need Python 3.8 in a Conda-managed setup, the safest approach is usually to create a new environment rather than modifying a busy existing one in place. Conda can upgrade or downgrade the interpreter, but environment compatibility is easier to manage when the change is isolated.
Decide Between New Environment and In-Place Upgrade
You have two common paths:
- create a fresh environment with Python 3.8
- change the Python version inside an existing environment
Creating a fresh environment is the lower-risk option because it does not disturb the working state of your current packages.
Recommended: Create a New Environment
That gives you a clean interpreter and lets Conda resolve dependencies specifically for Python 3.8.
If you already know some packages you need, include them during creation:
This is often cleaner than installing Python first and many packages later.
In-Place Upgrade or Downgrade
If you must keep the same environment name, activate it and ask Conda to install the required Python version:
Conda will solve the environment again and may upgrade, downgrade, or remove packages to satisfy compatibility. Read the proposed transaction carefully before accepting it.
Export Before You Change Anything
Before editing an existing environment, export it:
That gives you a recovery point if the solver produces a result you do not want.
For a lighter-weight package list:
This can be useful when you want reproducible reinstall behavior.
Verify the Active Interpreter
One common source of confusion is updating one environment and then running a different Python binary. Confirm both the version and the path:
On Windows, use:
If the path does not point to the active Conda environment, the upgrade may have worked but the shell is not using it.
Reinstall Packages if Needed
Some packages pinned in an older environment may not be compatible with Python 3.8. If Conda cannot solve cleanly, it is often easier to start from a smaller environment and add dependencies one group at a time.
For example:
That approach makes compatibility failures much easier to isolate.
When pip Enters the Picture
If you mix pip packages into the environment, install the Conda packages first and pip packages afterward. Changing the interpreter version in an environment that already contains many pip-installed wheels can become messy because Conda cannot fully reason about those packages.
If the old environment is heavily pip-based, creating a fresh py38 environment is usually the right move.
Common Pitfalls
The biggest mistake is changing Python in a crowded environment without exporting a backup first.
Another mistake is assuming the upgrade failed when the real problem is that the shell or IDE is still pointing at a different Python executable.
A third issue is trying to force incompatible package pins to remain unchanged. Sometimes the environment must be rebuilt rather than gently upgraded.
Summary
- The safest way to get Python 3.8 with Conda is usually
conda create -n py38 python=3.8. - You can change an existing environment with
conda install python=3.8, but that is riskier. - Export the current environment before modifying it.
- Verify both
python --versionand the interpreter path after the change. - If dependency solving becomes messy, build a fresh environment and reinstall packages incrementally.

