From my own experience, you cannot strictly learn the arcpy site package without eventually bringing in larger concepts from the Python programming language. In fact, I first tried to take the approach you are eluding to, where I began using the arcpy site package to automate processes in ArcGIS. However, I quickly found myself paging through Python documentation looking for better approaches to, for example, manipulate paths such as with os.path.join()
. I also found that I had been avoiding incredibly powerful Python libraries such as NumPy and SciPy by accepting the ESRI alternatives. In sum I would recommend the following steps to learn Python fundamentals complimented by the arcpy site package:
- First: use an IDE such as PythonWin or PyScripter to do all of your
scripting! It takes too many people too long to realize that they
can implement and debug scripts outside of the ArcGIS python window.
- Perform even the most simple tasks using Python. For example, define a workspace and create a geodatabase programmatically. Don't start out
creating complicated scripts.
- It's okay to do all of your scripting using arcpy initially--just
keep in mind there are better, more efficient methods for many tasks. Always look
for a better alternative with pure Python, if necessary.
- Find programmatic solutions to inquiries on this site. This will
definitely help round out your abilities, as it exposes you to
problems outside of your comfort zone.
- Finally, once you believe you have a good grasp of Python, take an
instructor led course from ESRI such as Introduction to
Geoprocessing Scripts Using Python. Yes, these courses are
expensive, but they are valuable and will really reinforce what
you've already learned. Just do not go into one of these courses
without a good grasp of the major concepts.