UNIT IV
COMPOUND DATA: LISTS, TUPLES, DICTIONARIES
Lists, list operations, list slices, list methods, list loop, mutability, aliasing, cloning lists,
list parameters; Tuples, tuple assignment, tuple as return value; Dictionaries:
operations and methods; advanced list processing - list comprehension, Illustrative
programs: selection sort, insertion sort, merge sort, quick sort.
Lists
List is an ordered sequence of items. Values in the list are called elements / items.
It can be written as a list of comma-separated items (values) between square
brackets[ ].
Items in the lists can be of different data types.
Operations on list:
1. Indexing
2. Slicing
3. Concatenation
4. Repetitions
5. Updating
6. Membership
7. Comparison
operations examples description
create a list >>> a=[2,3,4,5,6,7,8,9,10] in this way we can create a
>>> print(a) list at compile time
[2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> print(a[0]) Accessing the item in the
Indexing 2 position 0
>>> print(a[8]) Accessing the item in the
10 position 8
>>> print(a[-1]) Accessing a last element
10 using negative indexing.
>>> print(a[0:3])
Slicing [2, 3, 4]
>>> print(a[0:]) Printing a part of the list.
[2, 3, 4, 5, 6, 7, 8, 9, 10]
>>>b=[20,30] Adding and printing the
Concatenation >>> print(a+b) items of two lists.
[2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 30]
>>> print(b*3) Create a multiple copies of
Repetition [20, 30, 20, 30, 20, 30] the same list.
1 Unit 3:control flow, functions
, >>> print(a[2])
4 Updating the list using
Updating >>> a[2]=100 index value.
>>> print(a)
[2, 3, 100, 5, 6, 7, 8, 9, 10]
>>> a=[2,3,4,5,6,7,8,9,10]
>>> 5 in a
Membership True Returns True if element is
>>> 100 in a present in list. Otherwise
False returns false.
>>> 2 not in a
False
>>> a=[2,3,4,5,6,7,8,9,10]
>>>b=[2,3,4] Returns True if all elements
Comparison
>>> a==b in both elements are same.
False Otherwise returns false
>>> a!=b
True
List slices:
List slicing is an operation that extracts a subset of elements from an list and
packages them as another list.
Syntax:
Listname[start:stop]
Listname[start:stop:steps]
default start value is 0
default stop value is n-1
[:] this will print the entire list
[2:2] this will create a empty slice
slices example description
>>> a=[9,8,7,6,5,4]
a[0:3] >>> a[0:3] Printing a part of a list from
[9, 8, 7] 0 to 2.
a[:4] >>> a[:4] Default start value is 0. so
[9, 8, 7, 6] prints from 0 to 3
a[1:] >>> a[1:] default stop value will be
[8, 7, 6, 5, 4] n-1. so prints from 1 to 5
a[:] >>> a[:] Prints the entire list.
[9, 8, 7, 6, 5, 4]
2 Unit 3:control flow, functions
, a[2:2] >>> a[2:2] print an empty slice
[]
a[0:6:2] >>> a[0:6:2] Slicing list values with step
[9, 7, 5] size 2.
a[::-1] >>> a[::-1] Returns reverse of given list
[4, 5, 6, 7, 8, 9] values
List methods:
Methods used in lists are used to manipulate the data quickly.
These methods work only on lists.
They do not work on the other sequence types that are not mutable, that is, the
values they contain cannot be changed, added, or deleted.
syntax:
list name.method name( element/index/list)
syntax example description
1 a.append(element) >>> a=[1,2,3,4,5]
>>> a.append(6) Add an element to
>>> print(a) the end of the list
[1, 2, 3, 4, 5, 6]
2 a.insert(index,element) >>> a.insert(0,0) Insert an item at the
>>> print(a) defined index
[0, 1, 2, 3, 4, 5, 6]
3 a.extend(b) >>> b=[7,8,9] Add all elements of a
>>> a.extend(b) list to the another
>>> print(a) list
[0, 1, 2, 3, 4, 5, 6, 7, 8,9]
4 a.index(element) >>> a.index(8) Returns the index of
8 the first matched
item
5 a.sort() >>> a.sort() Sort items in a list in
>>> print(a) ascending order
[0, 1, 2, 3, 4, 5, 6, 7, 8]
6 a.reverse() >>> a.reverse() Reverse the order of
>>> print(a) items in the list
[8, 7, 6, 5, 4, 3, 2, 1, 0]
3 Unit 3:control flow, functions
COMPOUND DATA: LISTS, TUPLES, DICTIONARIES
Lists, list operations, list slices, list methods, list loop, mutability, aliasing, cloning lists,
list parameters; Tuples, tuple assignment, tuple as return value; Dictionaries:
operations and methods; advanced list processing - list comprehension, Illustrative
programs: selection sort, insertion sort, merge sort, quick sort.
Lists
List is an ordered sequence of items. Values in the list are called elements / items.
It can be written as a list of comma-separated items (values) between square
brackets[ ].
Items in the lists can be of different data types.
Operations on list:
1. Indexing
2. Slicing
3. Concatenation
4. Repetitions
5. Updating
6. Membership
7. Comparison
operations examples description
create a list >>> a=[2,3,4,5,6,7,8,9,10] in this way we can create a
>>> print(a) list at compile time
[2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> print(a[0]) Accessing the item in the
Indexing 2 position 0
>>> print(a[8]) Accessing the item in the
10 position 8
>>> print(a[-1]) Accessing a last element
10 using negative indexing.
>>> print(a[0:3])
Slicing [2, 3, 4]
>>> print(a[0:]) Printing a part of the list.
[2, 3, 4, 5, 6, 7, 8, 9, 10]
>>>b=[20,30] Adding and printing the
Concatenation >>> print(a+b) items of two lists.
[2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 30]
>>> print(b*3) Create a multiple copies of
Repetition [20, 30, 20, 30, 20, 30] the same list.
1 Unit 3:control flow, functions
, >>> print(a[2])
4 Updating the list using
Updating >>> a[2]=100 index value.
>>> print(a)
[2, 3, 100, 5, 6, 7, 8, 9, 10]
>>> a=[2,3,4,5,6,7,8,9,10]
>>> 5 in a
Membership True Returns True if element is
>>> 100 in a present in list. Otherwise
False returns false.
>>> 2 not in a
False
>>> a=[2,3,4,5,6,7,8,9,10]
>>>b=[2,3,4] Returns True if all elements
Comparison
>>> a==b in both elements are same.
False Otherwise returns false
>>> a!=b
True
List slices:
List slicing is an operation that extracts a subset of elements from an list and
packages them as another list.
Syntax:
Listname[start:stop]
Listname[start:stop:steps]
default start value is 0
default stop value is n-1
[:] this will print the entire list
[2:2] this will create a empty slice
slices example description
>>> a=[9,8,7,6,5,4]
a[0:3] >>> a[0:3] Printing a part of a list from
[9, 8, 7] 0 to 2.
a[:4] >>> a[:4] Default start value is 0. so
[9, 8, 7, 6] prints from 0 to 3
a[1:] >>> a[1:] default stop value will be
[8, 7, 6, 5, 4] n-1. so prints from 1 to 5
a[:] >>> a[:] Prints the entire list.
[9, 8, 7, 6, 5, 4]
2 Unit 3:control flow, functions
, a[2:2] >>> a[2:2] print an empty slice
[]
a[0:6:2] >>> a[0:6:2] Slicing list values with step
[9, 7, 5] size 2.
a[::-1] >>> a[::-1] Returns reverse of given list
[4, 5, 6, 7, 8, 9] values
List methods:
Methods used in lists are used to manipulate the data quickly.
These methods work only on lists.
They do not work on the other sequence types that are not mutable, that is, the
values they contain cannot be changed, added, or deleted.
syntax:
list name.method name( element/index/list)
syntax example description
1 a.append(element) >>> a=[1,2,3,4,5]
>>> a.append(6) Add an element to
>>> print(a) the end of the list
[1, 2, 3, 4, 5, 6]
2 a.insert(index,element) >>> a.insert(0,0) Insert an item at the
>>> print(a) defined index
[0, 1, 2, 3, 4, 5, 6]
3 a.extend(b) >>> b=[7,8,9] Add all elements of a
>>> a.extend(b) list to the another
>>> print(a) list
[0, 1, 2, 3, 4, 5, 6, 7, 8,9]
4 a.index(element) >>> a.index(8) Returns the index of
8 the first matched
item
5 a.sort() >>> a.sort() Sort items in a list in
>>> print(a) ascending order
[0, 1, 2, 3, 4, 5, 6, 7, 8]
6 a.reverse() >>> a.reverse() Reverse the order of
>>> print(a) items in the list
[8, 7, 6, 5, 4, 3, 2, 1, 0]
3 Unit 3:control flow, functions