Can anyone suggest a good learning python website?

11-15-2016 12:24 AM
New Contributor III

I want to learn Python but not sure where really start !

0 Kudos
8 Replies
MVP Legendary Contributor

There are online courses... but I am sure you have done a google search for those ... everyone will have an opinion as to what is the best.  Try free stuff and see what works for you

There are the actual docs

I keep a resource list, a lot beyond the intro level, but there are cheat sheets and a number of other references suited to all levels /blogs/dan_patterson/2016/05/09/the-links 

Books? lots... just about anything by Python - Programming - Books & Videos - O'Reilly Media  Again, there are others, see what suits your needs.

As it relates to arcgis and associated stuff, that would be the next step Esri Press| GIS Books & Tutorials - Buy Books Online 

And don't forget GeoNet‌ are two spaces/place here

You will learn by doing... period

MVP Esteemed Contributor

I can't emphasize Dan's last point enough, i.e., you will learn by doing.  Additionally, you will learn by taking the time to understand other's suggestions to people's questions in forums like GeoNet.  Don't just copy and paste, learn how and why something does or doesn't work.  Books or videos can be useful learning aides, but whatever one can absorb from them is quickly lost if not applied immediately and frequently.

MVP Esteemed Contributor

I agree with both Dan and Joshua...just dig in and start trying..and looking at sample code of what others have written (Dan's blogs are a good place to start too) but remember everyone has a style, and there is more than one good style.  Keep an open mind until you find what makes sense to you, but as you get more familiar, you may find a different pattern you like. my opinion (and my experience).  

Don't feel intimidated by it, Python works great with ArcGIS.  If you've run some commands in ArcMap/Catalog, you can always open the Results tab, right-click on the successfully results and "copy python snippet". 

Having a good development environment (many free) is also helpful.  You still need to learn what you are doing, but many will let you know when you have syntax errors, give hints, and help debug.  I personally use Wing Pro (Python IDE for Python Developers - Wingware Python IDE   and there is a free version Wing101 I believe), but there are many others.  For more opinions of what others are using  

To add a few more links from Geonet with a few options for books, etc.

Introduction to Writing Geoprocessing Scripts with Python 10.2/10.3 Class Resources 

If/when you have a question you what to ask to help with your python, make sure you use the

... More ... Syntax Highlighter ->python

option in the Geonet menu so your  code is formatted correctly.  Spacing is extremely important in Python, and it is hard for others to help if the code is not formatted correctly.  Also, alwasy include the version of the ArcGIS software you are using, since Desktop and Pro use a different version.  This is a little a head of the game for learning, but never hurts to keep it in mind for the future.

Good luck, and have fun with Python.

MVP Honored Contributor

Hi Abdul,

I agree with what everyone has said. Just to add my two cents, for using Python directly with ArcGIS, I have really enjoyed this book:

Esri Press| Python Scripting for ArcGIS | 

Python Scripting Book

Occasional Contributor II

Excellent comments already so I don't have a lot to add - Esri offers training courses. Many schools have subscriptions to training if you are a student, so check to see if you can attend for free.  and search for Python courses, there are several and since they focus on ArcGIS you'll learn more about how to use ArcPy which is something general training won't cover. 

There are also interactive tutorials on websites such as Learn Python - Free Interactive Python Tutorial or  Python | Codecademy which can be more effective than a textbook for some learning styles. 

And again +1 to 'Learn by Doing' .. Even though it's named Python, it doesn't bite  Just start typing.

Occasional Contributor III

Found this to be a good starting point --- since I did not have python installed when I was learning....

Learn Python - Free Interactive Python Tutorial 

New Contributor III

If you're happy to pay, Pluralsight offer heaps of online courses. I've previously had an account on there and done numerous courses in JavaScript, Python etc. They're all generally very well made and can cater to a varying range of skill levels.

Occasional Contributor

One of the best I have found is Learning Python the Hard Way.

Learn Python the Hard Way 

It starts at beginner and works you up through the ranks with exercises and demos.