Contents

  1. mystery.py
  2. twod_exercises.py
  3. twod_inclass.py

mystery.py 1/3

[
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 = list(range(1,5))
    a1 = list(range(5,9))
    a2 = list(range(9,13))
    a = []
    a.append(a0)
    a.append(a1)
    a.append(a2)
    return a

main()

twod_exercises.py 2/3

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

def main():
    rows = int(input("How many rows? "))
    columns = int(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("*"*55)
    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 range(rows):
        row = []
        for col in range(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 range(cols):
        onerow.append(0)
    for row in range(rows):
        twodlist.append(onerow)
        
    return twodlist
    

main()

twod_inclass.py 3/3

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

def main():
    rows = 3
    columns = 4

    #rows = int(input("How many rows? "))
    #columns = int(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)


def create2DList(rows, cols):
    """Returns a two-dimensional list filled with 0s that is 'rows' tall and
    'cols' wide."""
    
    

main()

Generated by GNU Enscript 1.6.6.