9.1 Lists
9.1 Lists
Lists
Overview
The list type is a container that holds a number of other objects, in a given order. The list type implements the sequence protocol,
and also allows you to add and remove objects from the sequence.
Creating Lists
To create a list, put a number of expressions in square brackets:
L=[]
L = [expression, ...]
Example:
#!/usr/bin/python
L=[1,2,3,4,5,6,7,8]
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]
listinlist=[1,2,[3,4,5],4,5]
Like string indices, list indices start at 0, and lists can be sliced, concatenated and so on.
Accessing Lists
Lists implement the standard sequence interface; len(L) returns the number of items in the list, L[i] returns the item at index i (the
first item has index 0), and L[i:j] returns a new list, containing the objects between i and j.
Example:
list1 = ['india','australia','south africa','west indies']
print list1[0],"has brighter chances to win the world cup"
print "But may face competition from",list1[2]
Example:
#!/usr/bin/python
list1 = ['physics', 'chemistry', 1997, 2000]
for element in list1:
print element
Output:
physics
chemistry
1997
2000
#!/usr/bin/python
list1 = ['physics', 'chemistry', 1997, 2000]
for index in range(len(list1) :
print index
Output is:
0123
Modifying Lists
We can update single or multiple elements of lists by giving the slice on the left-hand side of the assignment operator, and you
can add to elements in a list with the append() method. Following is a simple example:
Example:
#!/usr/bin/python
List1=['a','b',1,'c']
List1[2]='d'
print List1
Output:
['a', 'b', 'c']
Built-in functions
1.cmp(list1, list2)
Compares elements of both lists.
2.len(list)
Gives the total length of the list.
3.max(list)
Returns item from the list with max value.
4.min(list)
Returns item from the list with min value.
5.list(seq)
Converts a tuple into list.
Built-in methods
1.list.append(obj)
Appends object obj to list
2.list.count(obj)
Returns count of how many times obj occurs in list
3.list.extend(seq)
Appends the contents of seq to list
4.list.index(obj)
Returns the lowest index in list that obj appears
5.list.insert(index, obj)
Inserts object obj into list at offset index
6.list.pop(obj=list[-1])
Removes and returns last object or obj from list
7.list.remove(obj)
Removes object the obj from list
8.list.reverse()
Reverses the objects of list in place
9.list.sort()
Sorts the objects of list
List len() Method
Description
The len() method returns the number of elements in the list.
Syntax
Following is the syntax for len() method-
len(list)
Parameters
list - This is a list for which, number of elements are to be counted.
Return Value
This method returns the number of elements in the list.
Example
The following example shows the usage of len() method.
#!/usr/bin/python3
list1 = ['physics', 'chemistry', 'maths']
print (len(list1))
list2=list(range(5)) #creates list of numbers between 0-4
print (len(list2))
3
5
Description
The max() method returns the elements from the list with maximum value.
Syntax
Following is the syntax for max() method-
max(list)
Parameters
list - This is a list from which max valued element are to be returned.
Return Value
This method returns the elements from the list with maximum value.
Example
The following example shows the usage of max() method.
#!/usr/bin/python3
list1, list2 = ['C++','Java', 'Python'], [456, 700, 200] print ("Max value element : ",
max(list1)) print ("Max value element : ", max(list2))
When we run above program, it produces following result-
Description
The method min() returns the elements from the list with minimum value.
Syntax
Following is the syntax for min() method-
min(list)
Parameters
list - This is a list from which min valued element is to be returned.
Return Value
This method returns the elements from the list with minimum value.
Example
list1, list2 = ['C++','Java', 'Python'], [456, 700, 200] print ("min value element : ",
min(list1)) print ("min value element : ", min(list2))
Description
The list() method takes sequence types and converts them to lists. This is used to convert a given tuple into list.
Note: Tuple are very similar to lists with only difference that element values of a tuple can not be changed and tuple elements
are put between parentheses instead of square bracket. This function also converts characters in a string into a list.
Syntax
Following is the syntax for list() method-
list( seq )
Parameters
seq - This is a tuple or string to be converted into list.
148
Return Value
This method returns the list.
Example
The following example shows the usage of list() method.
#!/usr/bin/python3
aTuple = (123, 'C++', 'Java', 'Python')
list1 = list(aTuple)
print ("List elements : ", list1)
str="Hello World"
list2=list(str)
print ("List elements : ", list2)
Description
The append() method appends a passed obj into the existing list.
Syntax
Following is the syntax for append() method-
list.append(obj)
Parameters
obj - This is the object to be appended in the list.
Return Value
This method does not return any value but updates existing list.
Example
The following example shows the usage of append() method.
#!/usr/bin/python3
list1 = ['C++', 'Java', 'Python']
list1.append('C#')
Description
The count() method returns count of how many times obj occurs in list.
Syntax
Following is the syntax for count() method-
list.count(obj)
Parameters
obj - This is the object to be counted in the list.
Return Value
This method returns count of how many times obj occurs in list.
Example
The following example shows the usage of count() method.
#!/usr/bin/python3
aList = [123, 'xyz', 'zara', 'abc', 123]; print ("Count for 123 : ", aList.count(123)) print ("Count for zara : ",
aList.count('zara'))
Description
The extend() method appends the contents of seq to list.
Syntax
Following is the syntax for extend() method-
list.extend(seq)
Parameters
Return Value
This method does not return any value but adds the content to an existing list.
Example
The following example shows the usage of extend() method.
#!/usr/bin/python3
list1 = ['physics', 'chemistry', 'maths'] list2=list(range(5)) #creates list of numbers between 0-4 list1.extend('Extended
List :', list2)
print (list1)
Description
The index() method returns the lowest index in list that obj appears.
Syntax
Following is the syntax for index() method-
list.index(obj)
Parameters
obj - This is the object to be find out.
Return Value
This method returns index of the found object otherwise raises an exception indicating that the value is not found.
Example
The following example shows the usage of index() method.
#!/usr/bin/python3
list1 = ['physics', 'chemistry', 'maths']
print ('Index of chemistry', list1.index('chemistry'))
print ('Index of C#', list1.index('C#'))
Index of chemistry 1
Traceback (most recent call last):
File "test.py", line 3, in
print ('Index of C#', list1.index('C#'))
ValueError: 'C#' is not in list
Description
The insert() method inserts object obj into list at offset index.
Syntax
Following is the syntax for insert() method-
list.insert(index, obj)
Parameters
index - This is the Index where the object obj need to be inserted.
Return Value
This method does not return any value but it inserts the given element at the given index.
Example
The following example shows the usage of insert() method.
#!/usr/bin/python3
Description
The pop() method removes and returns last object or obj from the list.
Syntax
Following is the syntax for pop() method-
list.pop(obj=list[-1])
Parameters
obj - This is an optional parameter, index of the object to be removed from the list.
Return Value
This method returns the removed object from the list.
Example
The following example shows the usage of pop() method.
#!/usr/bin/python3
list1 = ['physics', 'Biology', 'chemistry', 'maths']
list1.pop()
print ("list now : ", list1)
list1.pop(1)
print ("list now : ", list1)
Parameters
obj - This is the object to be removed from the list.
Return Value
This method does not return any value but removes the given object from the list.
Example
The following example shows the usage of remove() method.
#!/usr/bin/python3
list1 = ['physics', 'Biology', 'chemistry', 'maths']
list1.remove('Biology')
print ("list now : ", list1)
list1.remove('maths')
print ("list now : ", list1)
Description
The reverse() method reverses objects of list in place.
Syntax
Following is the syntax for reverse() method-
list.reverse()
Parameters
NA
Return Value
This method does not return any value but reverse the given object from the list.
Example
The following example shows the usage of reverse() method.
#!/usr/bin/python3
list1 = ['physics', 'Biology', 'chemistry', 'maths']
list1.reverse()
print ("list now : ", list1)
\
When we run above program, it produces following result-
Description
The sort() method sorts objects of list, use compare function if given.
Syntax
Following is the syntax for sort() method-
list.sort([func])
Parameters
NA
Return Value
This method does not return any value but reverses the given object from the list.
Example
The following example shows the usage of sort() method.
#!/usr/bin/python3
list1 = ['physics', 'Biology', 'chemistry', 'maths']
list1.sort()
print ("list now : ", list1)
COMPARE METHOD :
Description
Syntax
cmp(list1, list2)
Parameters
Return Value
If elements are of the same type, perform the compare and return the result. If elements are different types, check to see if they are numbers.
If either element is a number, then the other element is "larger" (numbers are "smallest").
If we reached the end of one of the lists, the longer list is "larger." If we exhaust both lists and share the same data, the result is a tie, meaning that 0 is
returned.
Example
#!/usr/bin/python