Python Comrehensions

You might also like

Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 2

#list comprehension

values = []

# for x in range(10):
# values.append(x)

#basic list comprehension


values = [x+1 for x in range(10)]

print(values)

#Condition comrehension
evens = []
# for number in range(50):
# is_even = number % 2 ==0
# if is_even:
# evens.append(number)

evens =[number for number in range(50) if number % 2 == 0]

print(evens)

#Comprehension with mutlitple conditions

options = ["any","albany","apple","world","hello",""]
valid_strings = []

# for string in options:


# if len(string) <= 1:
# continue
# if string[0] != 'a':
# continue
# if string[-1] != "y":
# continue
# valid_strings.append(string)

valid_strings = [
string
for string in options
if len(string) >= 2
if string[0] == "a"
if string[-1] == "y"
]
print(valid_strings)

#multiple list comprehension


matrix = [[1,2,3],[4,5,6],[7,8,9]]
flattened = []

# for row in matrix:


# for num in row:
# flattened.append(num)

flattened = [num for row in matrix for num in row]

print(flattened)
#if else comprehension
categories=[]
# for number in range(10):
# if number % 2 == 0:
# categories.append("Even")
# else:
# categories.append("Odd")

categories = ["Even" if x % 2 == 0 else "odd" for x in range(10)]

print(categories)

#Nested List comprehension


import pprint

printer = pprint.PrettyPrinter()

lst = []

# for a in range(5):
# l1 = []
# for b in range(5):
# l2 = []
# for num in range(5):
# l2.append(num)
# l1.append(l2)
#
# lst.append(l1)

lst = [[[num for num in range(5)] for _ in range(5)] for _ in range(5)]

printer.pprint(lst)

#transformation in comprehension

def square(x):
return x**2

squared_number = [square(x) for x in range(10)]

print(squared_number)

#Dictionary comprehension

You might also like