1

I installed Python 3.10 on Mac and installed some packages as well. But then I see AWS lamda does not support Python 3.10 so I decided to downgrade. I removed Python3.10 folder in Applications and cleared the trash. But still I see a folder named 3.10 in /Library/Frameworks/Python.framework/Versions which is causing problems, such as this:

  $ python3 -m pip install virtualenv
 Requirement already satisfied: virtualenv in      /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages (20.14.1)
 Requirement already satisfied: platformdirs<3,>=2 in /Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages (from virtualenv) (2.5.2) 

So my question is how do I completely uninstall python 3.10 from my Mac?

Deepak Sharma
  • 4,751
  • 5
  • 44
  • 106
  • 1
    Why uninstall it? Lambda will support it at *some* point, and you can install multiple versions of Python side-by-side until then. – chepner Apr 25 '22 at 20:24
  • 1
    Ok, but because I am learning lambda from scratch I just wanted to be safe and not waste time in debugging issues caused by configurations. For instance, when I am installing virtualenv after installing python 3.8, it is finding site-packages in 3.10 folder in library(when 3.10 was supposedly uninstalled). Not sure if something unpredictable happens. – Deepak Sharma Apr 25 '22 at 20:34
  • 1
    I suspect you aren't actually using Python 3.8 to create the virtual environment. – chepner Apr 25 '22 at 20:42

1 Answers1

3

Removing the app does not completely uninstall that version of Python. You will need to remove the framework directories and their symbolic links.

Deleting the frameworks

sudo rm -rf /Library/Frameworks/Python.framework/Versions/[version number] replacing [version number] with 3.10 in your case.

Removing symbolic links

To list the broken symbolic links.

ls -l /usr/local/bin | grep ‘../Library/Frameworks/Python.framework/Versions/[version number]’

And to remove these links:

cd /usr/local/bin

ls -l /usr/local/bin | grep '../Library/Frameworks/Python.framework/Versions/[version number]' | awk '{print $9}' | tr -d @ | xargs rm*

As always, please be wary of copying these commands. Please make sure the directories in the inputs are actual working directories before you execute anything.

The general idea in the end is to remove the folders and symlinks, and you're good to go.

Here is another response addressing this process: How to uninstall Python 2.7 on a Mac OS X 10.6.4?

zayadur
  • 153
  • 1
  • 8