In this tutorial, we will discuss one of the most important python datatypes. We will learn how to create, slice, add and remove a list. so let's discuss Python List. Table of Content:
- How to create a list
- How to access the elements from a list
- How to slice list in python
- How to add elements in a list
- How to remove an element from a list
- List methods
- List operation in python
What is a list and how to create a list in python?
A list is a mutable collection of different Python data types and to create a list we place all those different elements inside a square bracket [] and separate them with a comma (,). Let’s create a list:
list_1 = [1,2,3,4,5,6,7] list_2 = [1,"hello", "world", None, True]
we can even place a list inside a list
list_3 = [1,2,[3,4],"Hello"]
Access elements from a list.
To access an element or value stored in a list can be accessed through the indexing. Though when we initialize values inside the brackets [], and create the list all those values stored in contiguous memory location s and an index number is associated with every value or element inside a list. So indexing is a method of retrieving values from a list using the integers values. By conventional indexing start with 0 and end with a number less than total numbers of elements inside a list. It means that 0 index is associated with the first element of the list. If we try to access an element of list which does not have a corresponding index number then it will throw an Index error. Syntax of accessing an element from a list
List_name [ index_number]
Let’s understand it with an example.
list_1 = [1,2,3,4,[6,7,8],"hello"] print(list_1[0]) print(list_1[1]) print(list_1[2]) print(list_1[3]) print(list_1[4]) print(list_1[5])
#Output
1 2 3 4 [6, 7, 8] Hello
Negative Indexing:
In python we can use a negative integer as indexing here -1 refers to the last element of the list and so on. Let’s understand it with an example:
list_1 = [1,2,"hello",None] print(list_1[-1]) print(list_1[-3])
#Output
None 2
Python List Slicing:
In python, you can control the sequence of elements and can access it. In list slicing, we can access a range of elements using the indexing and colon. Syntax of list slicing:
list_name[starting_index : ending_index]
let’s understand it with an example:
list_1 = ["a","b","c","d","e","f","g"] print(list_1 [2 : 5]) print(list_1[:]) #Output
['c', 'd', 'e'] ['a', 'b', 'c', 'd', 'e', 'f', 'g']
Change or add elements to a list:
As we have defined that a list is a mutable collection by mutable mean that the values of the list can be altered with the assignment operator (=). And we can also add a new element in a predefined list using a method (a function) known as append(). append() add a new element at the last of the position of the list. Syntax to perform append() method on a list
list_name.append(new_item)
let’s understand it with an example:
my_list =["a",1,"b",2,"d",3] my_list[4] = "c" #Here value d will change with c my_list.append("d") my_list.append(4) print(my_list)
#Output
['a', 1, 'b', 2, 'c', 3, 'd', 4]
+ and * operator on a list: We use the + operator to concatenate 2 list and * operator to create a multiple copies of items present in the list. Syntax of using + and * operator on a list:
list_1 + list_2 list_1 * any_natural_number
Let’s understand it with an example:
list_1 =[1,2,3,4] list_2 =["a","b","c","d"] list_3 = list_1 + list_2 print(list_3) print(list_3 *3 )
#Output
[1, 2, 3, 4, 'a', 'b', 'c', 'd'] [1, 2, 3, 4, 'a', 'b', 'c', 'd', 1, 2, 3, 4, 'a', 'b', 'c', 'd', 1, 2, 3, 4, 'a', 'b', 'c', 'd']
To delete elements from a list
There is keyword known as del which we can use to delete the entire list or a specific element. Let’s understand it with an example
list_2 =["a","b","c","d"] del(list_2[2]) del (list_2[2]) print(list_2)
#Output
['a', 'b']
Apart from del keyword, there are many other methods associated with the list that helps in delete elements from a list such as pop() and remove().
List Methods :
In python, the list has some methods and these methods are:
append() - Add an element to the end of the list extend() - Add all elements of a list to the another list insert() - Insert an item at the defined index remove() - Removes an item from the list pop() - Removes and returns an element at the given index clear() - Removes all items from the list index() - Returns the index of the first matched item count() - Returns the count of the number of items passed as an argument sort() - Sort items in a list in ascending order reverse() - Reverse the order of items in the list copy() - Returns a shallow copy of the list.
List Comprehension:
A list comprehension a shorthand technique of creating a list using a for loop statement Syntax of creating a list using list comprehension
list_name = [items for statement on items]
let’s understand it with an example
list_1 = [x**2 for x in range(10)] print(list_1)
#Output
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
In keyword with a list:
If we want to know whether an item is presented in the list or not to do so we use the in keyword with the list. If the item is present in the list, we get a Boolean value True if not we get False. Let’s understand it with an example
my_list = [1,2,"a","b"] print( "a" in my_list) print( "c" in my_list)
#Output
True False
List as an Iterable:
As we know that list is iterable, like string so we can also use a list with the for-loop statement so the for loop can iterate through it. For example:
for i in [1,2,3,4,5]: print(i)
#Output
1 2 3 4 5