Contents

  1. birthyear3.py
  2. file_handle.py
  3. mystery.py
  4. twod_exercises.py

birthyear3.py 1/4

[
top][prev][next]
# Demonstrate validating user input
# Made from a student's code from Lab 1

def main():
    #Program mission statement
    print "This program determines your birth year" 
    print "given your age and the current year \n"

    age = getPosIntegerInput("Enter your age: ")
    currentyear = getPosIntegerInput("Enter the current year: ")
    
    if age > 115:
        print "That is not a reasonable age"
    else:
        birthyear=currentyear - age
        #Display output to the user
        print "You were either born in", birthyear, "or", birthyear-1


def getPosIntegerInput(prompt):
    """Repeatedly prompts the user for input until the user
    enters a positive integer."""
    while True: 
        try:
            value=input(prompt)
            if value > 0:
                return value
            else:
                print "Number is out of range"
        except: 
            print
            print "ERROR: Your input was not in the correct format."
            print "You must enter a positive integer value"

main()

file_handle.py 2/4

[
top][prev][next]
# Demonstrate file handling exception
# Sara Sprenkle

import sys

def main():
    infileName = raw_input("What file do you want to read? ")
    
    try:
        inFile = file(infileName, "r")
    except IOError, exc: # exc is the name of the thrown exception
        print "Error reading \"" + infileName + "\"."
        # could be a variety of different problems, so print out
        # the exception
        print exc
        sys.exit(1)

    outfileName = raw_input("What file do you want to write? ")
   
    try:
        outFile = file(outfileName, "w")
    except IOError, exc:
        print "Error writing \"" + outfileName + "\"."
        print exc
    
 
 
main()

mystery.py 3/4

[
top][prev][next]
# Practice with 2D lists
# by Sara Sprenkle

def main():
    matrix = createMatrix()
    print "Before:"
    print matrix
    mystery(matrix)
    print "After:"
    print matrix

def mystery(a):
    """ "run" this on A, at right """
    for row in range( len(a) ):
        for col in range( len(a[0]) ):
            if row == col:
                a[row][col] = 42
            else:
                a[row][col] += 1

def createMatrix():
    a0 = range(1,5)
    a1 = range(5,9)
    a2 = range(9,13)
    a = []
    a.append(a0)
    a.append(a1)
    a.append(a2)
    return a

main()

twod_exercises.py 4/4

[
top][prev][next]
# Practice with 2D Lists
# Sara Sprenkle

def main():
    rows = input("How many rows? ")
    columns = input("How many columns? ")

    print
    print "Correct Matrix Creation:"
    print '-'*30
    matrix = create2DList(rows, columns)
    print matrix

    print "\nAssigning matrix[1][2]=3"
    matrix[1][2] = 3
    print "Result: "
    print matrix

    print
    print "*"*50
    print "Incorrect Matrix Creation:"
    print '-'*30

    matrix = noCreate2DList(rows, columns)
    print matrix

    print "\nAssigning matrix[1][2]=3"
    print "Result: "
    matrix[1][2] = 3
    print matrix


def create2DList(rows, cols):
    """Returns a two-dimensional list filled with 0s that is 'rows' tall and
    'cols' wide."""
    twodlist = []
    for row in xrange(rows):
        row = []
        for col in xrange(cols):
            row.append(0)
        twodlist.append(row)
    return twodlist

def noCreate2DList(rows, cols):
    """Does not create a 2D list because each 'row' points to the same point in
    memory."""
    
    twodlist = []
    onerow = []
    for col in xrange(cols):
        onerow.append(0)
    for row in xrange(rows):
        twodlist.append(onerow)
        
    return twodlist

    

main()

Generated by GNU enscript 1.6.4.