Using Python 3.x in ArcGIS?

To address @CodyBrown comments here:

I don't know how this is opinion based. I am asking whether ESRI has plans to move to Python 3x in the near future or not. As answered below by James and Ann, they obviously do with Pro and thus probably will with Desktop, tat is if they continue with Desktop.

As of today, there are no plans to move Desktop/Server (ArcMap/ArcCatalog) to Python 3. [I'll stop short of saying never, but looking into the crystal ball it is highly unlikely it'll ever go that way]. There are a lot of backwards compatibility things (as you've pointed out) that'll break if we upgraded. (Not to mention all the back-end stuff we/esri would have to do to make it work).

Since Pro has a lot of major differences compared to Desktop (projects and how maps and layers exist), some things can't be backwards compatible. arcpy.mapping and arcpy.mp is an example of an area that has changed between the two products. Scripts that used arcpy.mapping will have to be upgraded if you want to use them in Pro. That said, Pro is designed to work along beside Desktop (Map/Catalog). It's your choice if you'll use it. As it is not a replacement, there is no need to start porting scripts to Py3 and arcpy.mp. In time you may want to gravitate that way (or may not), but all your scripts and workflows that you have today will continue to work tomorrow in Desktop.

Inside both 10.3 Desktop and Pro will be a tool, Analyze Tools for Pro that you can point at your scripts and it'll tell you what needs to be upgraded/ported. Further to my previous point, if you see value in upgrading scripts to work in Py3 and ArcGIS Pro, this utility will help you get there. But nobody is forcing you to update.


This summer Esri was saying that ArcGIS Pro will go Python 3. The legacy ArcGIS Desktop will stick with Python 2.x as long as it can.

I believe there are a bunch of Python 3 migration ArcGIS Pro tutorials on Esri's support page.


Python 3 migration

ArcGIS Pro uses Python 3.4. This is a significant change from other ArcGIS products including ArcGIS for Desktop, ArcGIS for Server, and ArcGIS Engine that have used (and will continue to use) releases in the Python 2 line.