180 likes | 348 Views
By: Ben Blake, Andrew Dzambo , Paul Flanagan. Python. Spacing Comments Header Consistency with variables – keep it simple Set all variables equal to zero initially Notes on changes to code – version control
E N D
Spacing • Comments • Header • Consistency with variables – keep it simple • Set all variables equal to zero initially • Notes on changes to code – version control • Good formatting example: http://www.personal.psu.edu/amd5554/resources/documented_code.pdf General Programming Tips
Declaring variables – don't need to create variable initially • Indenting in loops – no end statement • Capitalization matters – Temp, temp, tEmp, TEMP are all different variables Python Basics
Mathematical expressions are the same • + Addition • - Subtraction • * Multiplication • / Division • ** Exponentiation • 9.8E-8 = 9.8 * (10 ** (-8)) Numerical Arithmetic
Built-in functions • float, int, max, min, abs • Imported functions • sin, cos, tan, asin, acos, atan, log (natural log), log10 (base 10 log), exp, sqrt, pi, e • Trigonometric functions work exclusively in radians • k = m.cos(a * m.pi / 180.0) • degrad = m.pi / 180.0 • k = m.cos(a * degrad) Math Functions
Some commands/functions need to be imported in order to be used • Some libraries that can be imported: math, numpy, pylab • Different ways to import • from math import cos, sin, acos, pi • import math • k = math.cos(a * m.pi / 180.0) • import math as m • k = m.cos(a * m.pi / 180.0) Importing
Linecount += 1 ==>linecount= linecount + 1 • Average /= linecount==> average = average / linecount • Balance -= payment ==> balance = balance – payment • Population *= growth ==> population = population * growth Shortcut Operators
Need to distinguish between read-only (input) files and writeable (output) files • “r” = read-only, “w” = writeable • infile = open(“weather.csv”, “r”) • outfile = open(“pressure.txt”, “w”) Input/Output
Reading input files • vap_list = infile.readlines() • for vaporpressure in vap_list: • Print statements • Print >> outfile, x, y, vaporpressure • If a number immediately follows the %, it is the width (in spaces) of the field in which the object will be written • Print ‘%4f’ % x, ‘%4f’ % y this will print x and y as floating point numbers over 4 spaces Using Input/Output Files
Types: for, if, while loops • Indenting denotes code is in loop • To close loop, unindent the next line • Example of a simple loop - counts # of x's in xlist for x in xlist: y += 1 print y Loops
Determinant loop – use when you know how long you want the program to run • Similar to the “do loop” in ForTran and C++ • Two examples of for loops – can use either an input file or an array for station in stations: for k in range(n): For Loops
Used to make logical decisions • Can be imbedded inside for loops if logical_expression_1: # do this block when logical_expression_1 is true elif logical_expression_2: # do this block when logical_expression_2 is true else: # do this block when neither logical expression above is true If Loops
Comparisons of one variable to another or to a constant using comparison operators • == equals • < less than • <= less than or equal to • != not equals • > greater than • >= greater than or equal to Logical Expressions in Python
Indeterminant loop – use when duration of loop is unknown • Can be imbedded inside for loops • General while loop structure while logical_expression: # statements to run as long as logical_expression stays true While Loops
Can use to terminate a loop or part of a specific loop if a statement becomes true • Example of how break statement is used x = 0 for x in xlist: if x >= 40: x += 1 break else: x += 1 Break Statement
Collection of strings, floating point numbers, or integers listed in some order • Arrays are special form of list in which all elements are of same data type • Numeric Python module (numpy) is used to work with arrays Lists
List – create a defined list-type object • x = list([4.0, ‘Hypsometric’, 34]) • Range – returns list of integers in specified range – important in for loops • range(4) returns [0, 1, 2, 3] • range (2,4) returns [2, 3] • Len – counts how many numbers are in a list • len(range(2,4)) produces a value of 2 • Sum – adds up the numbers in a list List Operators
Input files consists of strings which can be split into component strings and then converted into numbers • Split method is used to break strings into more useful components • Default separator is a blank space, but separators can be anything, such as , : ; / - • Line splitting most useful when done inside a loop • Line = “32, 32.4, 36.8, Freezing Points” • q = float(line.split(“,”)[2]) = 36.8 Line Splitting