Python

Useful things

Create a list from range

list = [x for x in range(5,100,2)] // (begining, end, step)
print(list)

Create a dictionairy from 2 lists

list = [x for x in range(5,20,2)]
listB = ["apple", "banana", "pear"]

dict = {list[i] : listB[i] for i in range(len(listB))}

print(dict) // {5: 'apple', 7: 'banana', 9: 'pear'}

*args and **kwargs
*args passed in a function is treated as a list

def my_sum(*args):
    return sum(args)

print(my_sum(1, 2, 3))  // 6

**kwargs passed in a function is treated as a dictionairy

def concatenate(**kwargs):
    result = ""
    # Iterating over the Python kwargs dictionary
    for arg in kwargs.values():
        result += arg
    return result

print(concatenate(a="Real", b="Python", c="Is", d="Great", e="!")) 
// RealPythonIsGreat!

Lambda expressions

map function

def square(num):
    return(num*num)
my_nums = [1,3,5,6]

for number in map(square, my_nums):
    print(number) // 1,9,25,36

my_nums = list(map(square,my_nums))
print(my_nums) // [1, 9, 25, 36]

filter function

// return a filtered list of even numbers
def is_even(number):
    return number%2 == 0
    
my_nums = [1,3,5,2,6,12,11]

filtered = list(filter(is_even, my_nums))
print(filtered) // [2,6,12]

lambda functions

my_list = [5,12,33]

print(list(map(lambda num: num **2, my_list))) // [25, 144, 1089]

print(list(filter(lambda num: num%2==0, my_list))) // [12]