L et us begin the whirlwind Summer tour of Python Coding with GIS Programming. The next two months will look at the integration of Python functions within GIS. This first week served as an introduction to the environment of Python and basic task flows that can be presented through standardized flow chart symbols.
Lets look at a couple key terms before we continue.
IDE = Integrated Development Environment
IDLE = Integrated Development
and Learning Environment
Jupyter Notebook = another IDE
ArcGIS Notebook = derived from
Jupyter for specific use within ArcGIS applications
Now, one key concept to ensure we get across is that Python is an interpreted language. This means that it has an associated translator which reads your input line by line and executes what the code is telling it in the same manner. The opposite is a compiled language which compiles the given syntax and converts it to a machine code which is then executed. Python, as an interpreted language, is by design easier, albeit slower to process, as it is linear, easier to debug if there are mistakes present, and is simplistic in execution as it either will or wont work.
Python has default IDE's provided along side its installation, such as IDLE. But it also has numerous other graphic user interfaces (GUI) which can be used. Additionally, there are other interfaces which gain specific functionality such as the ArcGIS Notebook, which is a derivative of Jupyter Notebooks built specifically for use within ArcGIS Pro. We will predominately be using this throughout this course.
Another key concept that we looked at this week is that of graphically representing an algorithmic process through a flow chart. The flow diagram below is fairly simple, it involves 3 different inputs and a specific deliverable.
In its case we want to convert 3 radians of a circle into degrees. As such we can look at this concept in pseudocode, which is a word based representation of instructions which we could translate into python. Or we can pictographically look at it as has been done below.
No comments:
Post a Comment