At the interactive prompt, define a list named L that contains four strings or numbers (e.g., L=[0,1,2,3]). a. What happens when you try to index out of bounds (e.g., L[4])?
b. What about slicing out of bounds (e.g., L[-1000:100])?
c. Finally, how does Python handle it if you try to extract a sequence in reverse—with the lower bound greater than the higher bound (e.g., L[3:1])? Hint: try assigning to this slice(L[3:1]=[‘?’]) and see where the value is put
a. IndexError exception will be raised
b. Python returns the intersection of the slice with the list boundaries. In this case, it returns the whole list.
c. In the case when the lower bound greater than the higher bound the Python returns the position just before the lower bound (in case of L[3:1] it is just before 3)
Comments
Dear Prince ofori, please post a new question
Type the expressions below in python interactively, and try to explain what's happening in each case: a. 2 ** 16 2 / 5, 2 / 5.0 b. "spam" + "eggs" S = "ham" "eggs " + S S * 5 S[:0] "green %s and %s" % ("eggs", S) c. ('x',) [0] ('x', 'y') [1] d. L = [1,2,3] + [4,5,6] L, L[:], L[:0], L[-2], L[-2:] ([1,2,3] + [4,5,6]) [2:4] [L[2], L[3]] L.reverse(); L L.sort(); L L.index(4)
Leave a comment