LINQ In Python For C#

LINQ (Language Integrated Query) is a query language to deal with the query operators to perform the operations with the collections.

In Python, we are able to achieve LINQ methods like C#. In this blog, we will look C# equivalent LINQ methods in Python. We can achieve LINQ, using most of Python built-in function and iterators.

In Python, we define a list of flowers as a collection

  1. Colours = [‘Red, ’Green’, ’Blue’, ’Black’, ’White’, ’Orange’, ’Yellow’]   
In Python, built in functions are the same as in LINQ. I will give some samples for Python built-in functions and iterators; i.e., All & Any

For Any method, the command is given below.
  1. any (“a” in c for c in Colours)   
This method will check any color which contains the ‘a’ letter in it and the result for this query will return true.

For All Method, the command is given below.
  1. all (“a” in c for c in Colours)   
This method will check all the colors, which contain the ‘a’ letter and the result for this query is false.

Min & Max

For Min method, the command is given below.
  1. min (len(a) for c in Colours)   
This method will check the minimum length of the color and the result is 3.

For Max Method, the command is given below.
  1. max (len(a) for c in Colours)   
This method will check maximum length of the color, and the result is  returned as  6.

Take & Skip

In Python, we need to use a itertools module to include a islice built-in function. To access it, we need to call itertools in our page, using ghe method given below.
  1. from itertools import islice   
Here, islice function is used to achieve the functions; i.e., take (2) and skip (2), as shown below in Python,

For take function, the command is given below.
  1. list(islice(Colours ,2))   
This method will take 2 colors from the collection and return the output, as shown below. 

[‘Red, ’Green’]

For skip function, the command is given below.
  1. list(islice(Colours ,2, None))   
This method will skip 2 colors from the collection and return the output, as shown below.

[‘Blue’, ’Black’, ’White’, ’Orange’, ’Yellow’]

TakeWhile & DropWhile

Similar to islice, we need to use itertools module. To access it, we need to call takewhile & dropwhile in our page, as shown below.
  1. from itertools import takewhile   
  2. from itertools import dropwhile   
For takewhile function, the command given below is used.
  1. list(takewhile(lambda c: len(c) < 6,Colours))   
This method will take the colors with fewer than 6 letters and return the output, as shown below.

[‘Red, ’Green’, ’Blue’, ’Black’, ’White’]


For dropwhole function, the command is given below.

Here, dropwhile function is similar to skipwhile in C#.
  1. list(dropwhile(lambda c: len(c) < 6,Colours))  
This method will skip the colors with fewer than  6 letters and return an output, as shown below. 

[‘Orange’, ’Yellow’]

First, FirstOrDefault

In Python, the next method is equivalent to FitstOrDefault, but it will not be used on a list

For next method, this method is equivalent to First method in C#.
  1. next (c for c in Colours if c.startswith(“R”))   
This method will check the colors starting with 'R' and return the first color as “Red”. This method is equivalent to FirstOrDefault method in C#.
  1. next (c for c in Colours if c.startswith(“A”),”none”)   
This method will check the colors starting with 'A' and return the result as “none”, because there is no color starting with the character ‘A’.

Count

In Python, there is no built-in function like count, as we can use sum function for count.
  1. sum(1 for c in Colours if c.startswith(“B”))   
This method will count the colours starting with the letter “B” and the result will be 2.

Select & Where

In Python map, filter functions will replace the select and where functions in C#. Here are some examples for map and filter functions.

For map method, the command is given below.
  1. list(map(lambda x: x.lower(), Colours))   
This query will return the result, as shown below. 

[‘red, ’green’, ’blue’, ’black’, ’white’, ’orange’, ’yellow’]

For filter method, the command is given below.
  1. list(filter(lambda x: "e" in x, Colours))   
This query will return the result, as shown below. 

[‘Red, ’Green’, ’Blue’, ’White’, ’Orange’, ’Yellow’]

Orderby

In Python, the built in function sorted is used to order the collections,
  1. sorted(Colours, key=lambda x:len(x))   
The sorting is based on the length of colours and the result is shown below. 

[‘Red, ’Blue’, ’Green’, ’Black’, ’White’, ’Orange’, ’Yellow’] 
Ebook Download
View all
Learn
View all