""" Purpose: consider parameter passing list nuances """ def f( x ) : print( "before reassignment:", id( x ) ) # originally, x points to the same point in memory as the argument that was passed in # remember when we talked about mutability? lists can be changed, that's why we don't need an assignment with .append() x = [ 3, 1, 4 ] # we used an assignment statement to change the value stored in x print( "after reassignment:", id( x ) ) # since we changed the assignment, we changed the location in memory return