added solutions.py, output section with desired output

This commit is contained in:
2023-08-08 09:27:51 -07:00
parent d2d024a906
commit 181136b3d7
2 changed files with 74 additions and 10 deletions

View File

@@ -2,21 +2,21 @@ import re
import pandas as pd import pandas as pd
def lc(l1: list): def list_comprehension(l1: list):
"""For input list l1 of integers, return list of elements """For input list l1 of integers, return list of elements
whose square is less than sum of all elements""" whose square is less than sum of all elements"""
return None return None
def nlc(l1: list, l2: list): def nested_list_comprehension(l1: list, l2: list):
"""For input lists l1, l2, return a list of elements common """For input lists l1, l2, return a list of elements common
to both l1 and l2.""" to both l1 and l2."""
return None return None
def dc(l1: list): def dict_comprehension(l1: list):
"""For input list l1 of integers, return a dictionary with """For input list l1 of integers, return a dictionary with
keys from l1, and values are squares of keys""" keys from l1, and values are squares of keys"""
@@ -27,19 +27,23 @@ if __name__ == "__main__":
l1 = [1, 2, 3, 4] l1 = [1, 2, 3, 4]
l2 = [2, 4, 6, 8] l2 = [2, 4, 6, 8]
print("Inputs:") print("\n-------------------\n")
print("Inputs:\n")
print(f"l1: {l1}") print(f"l1: {l1}")
print(f"l2: {l2}") print(f"l2: {l2}")
print("\n-------------------\n") print("\n-------------------\n")
print("lc:") print("list_comprehension:\n")
print(lc(l2)) print(f"Desired output: [2, 4]")
print(f"Output : {list_comprehension(l2)}")
print("\n-------------------\n") print("\n-------------------\n")
print("nlc:") print("nested_list_comprehension:\n")
print(nlc(l1, l2)) print(f"Desired output: [2, 4]")
print(f"Output : {nested_list_comprehension(l1, l2)}")
print("\n-------------------\n") print("\n-------------------\n")
print("dc:") print("dict_comprehension:\n")
print(dc(l1)) print("Desired output: {1: 1, 2: 4, 3: 9, 4: 16}")
print(f"Output: : {dict_comprehension(l1)}")
print("\n-------------------\n") print("\n-------------------\n")

60
solutions.py Normal file
View File

@@ -0,0 +1,60 @@
import re
import pandas as pd
def list_comprehension(l1: list):
"""For input list l1 of integers, return list of elements
whose square is less than sum of all elements"""
sum_l1 = sum(l1)
return [elem for elem in l1 if elem * elem < sum_l1]
def nested_list_comprehension(l1: list, l2: list):
"""For input lists l1, l2, return a list of elements common
to both l1 and l2."""
# result = []
# for e1 in l1:
# for e2 in l2:
# if e1 == e2:
# result.append(e1)
result = [e1 for e2 in l2 for e1 in l1 if e1 == e2]
return result
def dict_comprehension(l1: list):
"""For input list l1 of integers, return a dictionary with
keys from l1, and values are squares of keys"""
result = {e: e * e for e in l1}
return result
if __name__ == "__main__":
l1 = [1, 2, 3, 4]
l2 = [2, 4, 6, 8]
print("\n-------------------\n")
print("Inputs:\n")
print(f"l1: {l1}")
print(f"l2: {l2}")
print("\n-------------------\n")
print("list_comprehension:\n")
print(f"Desired output: [2, 4]")
print(f"Output : {list_comprehension(l2)}")
print("\n-------------------\n")
print("nested_list_comprehension:\n")
print(f"Desired output: [2, 4]")
print(f"Output : {nested_list_comprehension(l1, l2)}")
print("\n-------------------\n")
print("dict_comprehension:\n")
print("Desired output: {1: 1, 2: 4, 3: 9, 4: 16}")
print(f"Output: : {dict_comprehension(l1)}")
print("\n-------------------\n")