The sequences can be constructed in a concise or a short way from already defined sequences through the use of comprehensions in python. The sequences include data structures such as list, dictionary, set, etc. The following comprehensions are supported in python:
- List Comprehensions
- Dictionary Comprehensions
- Set Comprehensions
- Generator Comprehensions
This article will focus on the list comprehensions in python and its uses. Like the list comprehension set and dictionary comprehensions in python can also be created.
Learn data science course from the World’s top Universities. Earn Executive PG Programs, Advanced Certificate Programs, or Masters Programs to fast-track your career.
What is List Comprehension?
Python is a widely accepted programming language that provides the user with the ability to write easy and elegant code. List comprehension is one such distinctive feature of python which is used for creating new lists. Through the use of a single line of code, the functionality can be created.
It is not necessary that an if condition should be contained in a list comprehension, however multiple forms can be contained in the list comprehension.
Therefore, list comprehensions
- Is an elegant way for defining and the creation of a list based on lists that are existing.
- Compared to the normal functions for creating lists and the loops, the list comprehensions are much more compact and faster.
- For the code to be more user-friendly, writing of long list comprehensions should be avoided.
- While using a for loop, list comprehensions can be re-written.
How to create list?
Several ways exist for creating lists in the programming language python.
1. for loops
For loop can be used for creating a list. Three steps are to be followed for creating the element list.
- An empty list is to be instantiated.
- Looping is used over elements that can be iterated.
- Each element is appended to the list end.
2. map() Objects
An alternative approach i.e. map() is based on functional programming. An object is created when a function and element that is iterable is passed on to map(). The output that would be generated from the execution of the iterable element through the supplied function will be contained in the object.
Explore our Popular Data Science Courses
3. List comprehensions
Another way of making a list is through the use of list comprehension. The for loop can be re-written in a code consisting of just a single line.
Compared to the earlier methods where an empty list is created first and then the addition of the elements at the end, in this case, it simply happens in just a single line. The list and the contents are simply defined at the same time. The code used is.
There are three elements in every python list comprehensions.
- Expression: It being a member, expression is a method call or any expressions where a value is returned.
- Member: It is a value or an object in the iterable list. The value of a member is 1 in the above example.
- Iterable: it is a list, sequence, set, or other objects whose elements can be returned one at a time. Iterable is range(10) in the above example.
Python list comprehension can work well even in places that use map(). The above example can be re-written as.
The difference in using a map() and list comprehension is that a list is returned in case of list comprehension while a map object is returned in case of map().
upGrad’s Exclusive Data Science Webinar for you –
Conditional statements
The existing lists can be modified through the use of conditional statements in the list comprehensions. Either list or tuples, both can be modified through python list comprehensions.
Top Data Science Skills to Learn
SL. No | Top Data Science Skills to Learn | |
1 | Data Analysis Programs | Inferential Statistics Programs |
2 | Hypothesis Testing Programs | Logistic Regression Programs |
3 | Linear Regression Programs | Linear Algebra for Analysis Programs |
1. Using the condition of if
Condition of ‘if’ can be used in list comprehension through the following code.
Running the above program generates the output: [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
2. Using the condition of Nested IF
The list comprehension does the following checks:
- Is the element y divisible by 2 or 5?
- If both the conditions are satisfied by y then it is appended to num_list.
Also Read: Fascinating Python Applications in Real World
3. Using if-else
In the example shown above, the ten numbers, i.e. from 0 to 10 are checked by list comprehensions.
4. Using of nested loops
Output generated: [[1, 4], [2, 5], [3, 6], [4, 8]]
The transpose of the matrix is computed through the use of two loops.
- Compared to the normal nested loops, the nested loops contained in list comprehensions work differently from the other nested loops.
Syntax
The basic syntax for python list comprehension is
[expression for item in list]
Suppose we have a string and we want to iterate it through the use of list comprehension.
In the above example, it can be noticed that the ‘human’ is used as a string neither a list. Here lies the power of the python list comprehensions. Whether a string or be it a tuple, the list comprehension can identify it and work upon it like a list.
The same thing can be carried out by using the loops. But, the syntax of list comprehension cannot be followed by the loops.
Read our popular Data Science Articles
Conclusion
In this article, you learned briefly about the list comprehensions in python and its creation in various ways. With the knowledge of this comprehension, other codes may be tried upon for your tasks. The concept of python is getting a lot of attention, but it will be more valuable if you are able to use your data effectively. This can be carried out by writing clear and concise codes.
Therefore if you are willing to learn about python and its implementation in data mining, you can check the course of Executive PG Programme in Data Science offered by upGrad. The 12 months course is designed for entry-level professionals (both male and female) within 21 to 45 years of age and is India’s first NASSCOM certified PGP. With over 400+ hours of learning and hands-on experience of 14+ tools and languages, the course is designed specially to meet your dreams. Queries related to the course are most welcomed.