You can make a difference in the Apple Support Community!

When you sign up with your Apple Account, you can provide valuable feedback to other community members by upvoting helpful replies and User Tips.

Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

Python 2.7 vs 3.x?

I was wondering why Catalina still includes Python 2.7 seeing as how Apple now defaults the terminal to ZSH so I thought that Python would update also.

I was piddling in terminal and got this interesting little note:


"WARNING: Python 2.7 is not recommended. 


This version is included in macOS for compatibility with legacy software. 


Future versions of macOS will not include Python 2.7. 


Instead, it is recommended that you transition to using 'python3' from within Terminal."


So, does transition mean that Apple also includes Python 3.x in macOS, or do we, as in the past, install python 3 on our own?

iMac Line (2012 and Later)

Posted on Nov 13, 2019 6:27 AM

Reply
Question marked as Top-ranking reply

Posted on Nov 13, 2019 6:58 AM

Python, and all scripting languages really, were only ever included for Apple’s own use. Since Apple has scripts that depend on Python 2.7, that’s why they included it.


The good news is that Catalina now includes Python 3.7.3. Of course, it is part of system software and locked down much like Python always was. If you want to do any customization, installing your own Python would be the quickest and easiest way to do that.


The bad news is that Apple plans to remove all scripting languages from future versions of macOS. There may be some internal versions. I don’t know. But they are definitely going back/forward to a classic Mac/iOS style of operating system.


So if you need a newer version of Python, may as well install your own and set it up the way you want. You are going to have to do that eventually anyway.

3 replies
Question marked as Top-ranking reply

Nov 13, 2019 6:58 AM in response to danuke

Python, and all scripting languages really, were only ever included for Apple’s own use. Since Apple has scripts that depend on Python 2.7, that’s why they included it.


The good news is that Catalina now includes Python 3.7.3. Of course, it is part of system software and locked down much like Python always was. If you want to do any customization, installing your own Python would be the quickest and easiest way to do that.


The bad news is that Apple plans to remove all scripting languages from future versions of macOS. There may be some internal versions. I don’t know. But they are definitely going back/forward to a classic Mac/iOS style of operating system.


So if you need a newer version of Python, may as well install your own and set it up the way you want. You are going to have to do that eventually anyway.

Nov 13, 2019 7:18 AM in response to etresoft

Howdy and thank you for your reply.

I suppose that the system software version resides in /usr/bin, and any that we add is in /usr/local/bin.


I went through a lengthy process to install Ortho4xp so that I would have more realistic landscapes (Google Map based) in X-plane. Part of that included installing Python 3.7.4 So I suppose that I am ready for the macOS change/deletions.


Nov 13, 2019 7:32 AM in response to danuke

danuke wrote:

I suppose that the system software version resides in /usr/bin, and any that we add is in /usr/local/bin.

That is the default install location. Always double-check the build scripts though. Python in particular (at least the custom 2.7 version I build) doesn’t have a “make uninstall” so you should install it somewhere else like /usr/local/python.


All of the ports packages on Linux and the Mac encourage laziness. Either you have to rely on them absolutely, and then be lost when they fail, or learn to install from source, which can be tricky.

Python 2.7 vs 3.x?

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.