Survey
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project
Intro to Python Welcome to the Wonderful world of GIS programing! Topics • • • • A brief history of GIS programing What is Python? What is PythonWin? Basics of Python Brief history of ESRI’s GIS software evolution Software Year Data Format Arc/Info Coverage 1980’s ArcView Shapefile 1990’s ArcGIS 8 & 9 Geodatabase 2000’s ArcGIS 10 Geodatabase 2010 Programming language • SML was used for PC ArcInfo • AML was used for Arc/INFO 7.x • Avenue was used for ArcView 3.x • Visual Basic for Application (VBA) is for ArcGIS 8 & 9 & packaged with it • Python for ArcGIS10 What is Python? • An object oriented scripting language • Cross-platform: meaning portable & will run on Windows, Unix, and Linux • Python is fully embraced by ESRI at ArcGIS 10 • Comes bundled with ArcGIS • Free Programming Environments • Python files are text files (.py extension) • Python code can be written in Text Editor IDLE Python Win Python Window • PythonWin is the preferred way! PythonWin Interface 1. PyhonWin created specifically for windows with common tools & menus 2. Windows look and feel 3. 3 windows: a. Application window b. Script window c. Interactive window PythonWin: Script Window • Script window is for writing, saving, & executing code • Python scripts are saved with .py extension. Ex: (Test.py) PythonWin: Interactive Window • Interactive window is for testing code and report errors messages • Also report the output of print statement PythonWin: Application/main window Run Script Check Script Script ran successfully Basic Python syntax • • • • Comments Variables Strings Numbers Comments • Lines of code that serve as documentation: • Non-executable • Use a # or ## • It’s a must for your lab Example: # Name: John Denver # Date: January 2012 Block of code can be commented -- Highlight the block of code in the script window -- Right click>Source Code>Comment out region Python Statements Lines of code that perform a task print- sends output to the interactive window import – import a module Example: print “Welcome to Python world” import math (import math module) Variables • Variables store values of different types first = ”Bob” last = “Brown” age = 30 height = 5.6 source = “C:/Exercises/Auburn.gdb” • Variables are case sensitive Num = 500 & num = 5000 (2 variables) • Variables are dynamically type --do not have to declare the variable -- don’t have to assign a data type Strings • An ordered collection of characters • Can be surrounded by double (“”) or single (‘’) quotes message = “Welcome to Python” input = “C:/GIS222/Auburn.gdb/roads” Manipulating Strings Strings can be concatenated f1 = “C:/GIS222/Auburn/roads” f2 = “.shp” Data = f1 + f2 Result= “C:/GIS222/Auburn/roads.shp” Strings can be repeated s1 = “Ha!” s1*3 Result= “Ha!Ha!Ha!” Common String Functions Upper, lower, capitalize,……….. f1 = “AUBURN.shp” f1.upper() Result: “AUBURN.SHP” f1.lower() Result: “auburn.shp” f1.capitalize() Result: “Auburn.shp f1.replace(“AUBURN”, “OWASCO”) Result: “OWASCO.shp” There are many more; find them by typing object. Built-in Python Functions 1. len() returns the length of a string or a list f1 = “AUBURN.shp” len(f1) Result: 10 2. round() returns a rounded number xCoord = 450,000.2345 round(xCoord) Result: 450,000 3. str() converts an integer to a string zone = 18 strzone = str(zone) print “UTM Zone” + strzone Other Functions to convert values 1. float() returns a floating point value float(“10.0”) Result: 10.0 2. int() returns an integer value int(“10”) Result: 10 3. str() converts an integer to a string str(18) Result: “18” print “UTM Zone” + str(18) Getting user input 1. num = input(“Enter you age: “) 2. str = raw_input(“Enter your name: You can always check your input with print num Or print str “) Python Tutorial ArcGIS Resources Center: Search: “What is Python” Let’s try it!