Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
GIT461 GIS Python Programming Fundamentals Python Programming Environment • We will use the “PythonWin” version 2.7 system • This programming environment includes a code editor and a code interpreter • A code interpreter executes statements lineby-line as you type them – very useful for testing • A Code editor is used to type a complete program that is later tested and “de-bugged” PythonWin Environment • Interpreter window is displayed first. • You can type and execute simple statements in this window. PythonWin Environment • To type a Python script program select “File > New > Script”. • Type in code and save with a .py extention. • A good idea to have a folder such as “\PythonProgs\” just for source code scripts. PythonWin Environment • To load an existing python script select “File > Open” to load script into an edit window. PythonWin Environment • • • To run a script you should load it, and then select “File > Run” Note that you may enter “command line arguments” at this point if needed Select “OK” button to run the script Python Programming Fundamentals • Google “Python Language Reference” to load this help file Python Data Types • String: a sequence of alphanumeric characters • Integer: a whole number that has no fractional component • Float: a number that contains a fractional component • String example: “105 Glendale Avenue” (note that strings are enclosed in quotes) • Integer examples: 100, -19, 0, 9999999 • Float examples: 1.0, -123.678, 1.6745E3 Python Assignment Statement • The “=“ sign is the assignment operator as it is in most programming languages X=1 Print X # the number “1” will appear on the screen X=X+5 Print X # the number “6” will appear on the screen Python Comments • • • • A python comment begins with a “#”. Anything after the “#” is ignored by Python The 1st line in the below script is a comment line- it is ignored by Python The characters to the right of the “#” on lines 2-5 are ignored # get x1, y1, x2, y2 from the command line x1param = float(StripComma(sys.argv[1])) y1param = float(StripComma(sys.argv[2])) x2param = float(StripComma(sys.argv[3])) y2param = float(StripComma(sys.argv[4])) # x1 # y1 # x2 # y2 Python Operators (in order of precedence) • • • • • Multiplication: * Division: / Modulus: % Addition: + Subtraction: - Expressions • Expressions are combinations of data and operators: Built-in Python Functions • A function takes an “argument” or “arguments” and returns a value that can be used in an assignment statement • In the below satements abs(x) and pow(x,y) are built-in functions in every implementation of the Python language x = abs(-8) print x # the number “8” would appear in the interactive window y = pow(2,3) print y # the number “8” would appear in the interactive window Python Built-In Functions • abs(x) # returns the absolute value of x • float(x) # returns the string x converted to a floating point number • int(x) # returns the string x converted to a integer number • pow(x,y) # returns the number x rasied to the y power • round(x,n) # rounds the number x to n decimal places • str(x) # returns the string equivalent of the object x More Complex Expressions using Functions and Exponentiation • Note that trig functions use radian angular values. • You must convert degrees to radians before using the trig functions ( radians = degrees * 3.1416/180.0). • Note that before using the trig functions the math “module” had to be imported. Controlling Program Flow: Conditional Statements • A statement uses “reserved” python language words to initiate an action • A conditional statement makes a decision at run-time X = 10 If x == 10 : print “X=10” Note: everything indented Below the “If” statement is Part of the statement. Conditional Statements: More Complex IF/ELIF/ELSE construct • The “elif” and “else” keywords can be used to construct more complex decision structures x = random.randint(1,10) If x == 1 : print “you are in first place” Elif x == 2 : print “you are in second place” Elif x == 3 : print “you are in third place” Else : print “ sorry, you didn’t place this time” Controlling program flow with a loop: While statement • While statements can be used to repeat a section of code until some condition is reached. i=0 While i <= 10 : print I i=i+1 # you could also use i += 1 For Loops • A “For” loop uses a “list”. First a list must be built before it can be used in the For loop Mylist = [“A”, “B”, “C”, “D”] For letter in Mylist : print letter # the letters “A” through “D” would print to the screen Getting User Input: command line • Command line parameters are entered at run time in the “Run Script” window Getting User Input: “Input” function • The “input” function prompts the user for input during the running of the script User Input: Input function • Note that if you use the “input” function and you enter a string value it must be enclosed in quotes (single or double). Functions • A function is a stand-alone section of code that is designed to accomplish a specific task based on one or more parameters passed to the function • The function returns a calculated result so a function normally appears in the main code to the right of an assignment (=) statement so the returned value is stored in the variable on the left side of the assignment statement Function Placement • Functions are normally placed at the top of the main program file because they need to be defined before they are referenced in the main program • Below is an example function that converts a longitude string value (“-0883015”) to its decimal degree number equivalent