python' sequence types in this we explore python' various "sequenceclassesnamely the builtin listtupleand str classes there is significant commonality between these classesmost notablyeach supports indexing to access an individual element of sequenceusing syntax such as seq[ ]and each uses low-level concept known as an array to represent the sequence howeverthere are significant differences in the abstractions that these classes representand in the way that instances of these classes are represented internally by python because these classes are used so widely in python programsand because they will become building blocks upon which we will develop more complex data structuresit is imperative that we establish clear understanding of both the public behavior and inner workings of these classes public behaviors proper understanding of the outward semantics for class is necessity for good programmer while the basic usage of listsstringsand tuples may seem straightforwardthere are several important subtleties regarding the behaviors associated with these classes (such as what it means to make copy of sequenceor to take slice of sequencehaving misunderstanding of behavior can easily lead to inadvertent bugs in program thereforewe establish an accurate mental model for each of these classes these images will help when exploring more advanced usagesuch as representing multidimensional data set as list of lists implementation details focus on the internal implementations of these classes seems to go against our stated principles of object-oriented programming in section we emphasized the principle of encapsulationnoting that the user of class need not know about the internal details of the implementation while it is true that one only needs to understand the syntax and semantics of class' public interface in order to be able to write legal and correct code that uses instances of the classthe efficiency of program depends greatly on the efficiency of the components upon which it relies asymptotic and experimental analyses in describing the efficiency of various operations for python' sequence classeswe will rely on the formal asymptotic analysis notations established in we will also perform experimental analyses of the primary operations to provide empirical evidence that is consistent with the more theoretical asymptotic analyses