functions are defined by def: >>> def grow(a, b=[]): ... b.append(a) ... print b S[:] makes a top-level copy of any sequence object; copy.deepcopy(X) makes full copies. L[:0]=[X,Y,Z] inserts items at front of list L. L[len(L):]=[X,Y,Z] and L.extend([X,Y,Z]) insert items at end (like in-place "+"). L.append(X) and X=L.pop( ) can be used to implement in-place stack operations. Use for key in D.keys( ): to iterate through dictionaries, or simply for key in D: in 2.2. Use K=D.keys( ); K.sort( ); for key in K: for ordered dictionary iteration. X=A or B or None assigns X to the first true object among A and B, or None if both are false (i.e., 0 or empty). X,Y = Y,X swaps the values of X and Y. red, green, blue = range(3) assigns integer series. Use try/finally statements to ensure that termination code is run.