-
Notifications
You must be signed in to change notification settings - Fork 0
/
myfunctions2.py
80 lines (63 loc) · 2.67 KB
/
myfunctions2.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
def hello_world():
return print('**********','\n','Hello World!','\n', '##########')
def hello_who(who='World'):
return print('**********', '\n', 'Hello', {who} , '\n', '##########')
"""
Функция печатает приветствие в красивом формате
**********
Hello {who}!
##########
:param who: кого мы приветствуем, по умолчанию World
:return: None
"""
hello_world()
hello_who("max")
def pow_many(power, *args):
summ = 0
for arg in args:
summ += arg
return (summ**power)
#Функция складывает любое количество цифр и возводит результат в степень power (примеры использования ниже)
#:param power: степень
#
print(pow_many(1, 1, 2) == 3) # True -> (1 + 2)**1 == 3
print(pow_many(1, 2, 3) == 5) # True -> (2 + 3)**1 == 5
print(pow_many(2, 1, 1) == 4) # True -> (1 + 1)**2 == 4
print(pow_many(3, 2) == 8) # True -> 2**3 == 8
print(pow_many(2, 1, 2, 3, 4) == 100) # True -> (1 + 2 + 3 + 4)**2 == 10**2 == 100
def print_key_val(**kwargs):
print(kwargs)
for key, value in kwargs.items():
print("{} --> {}".format(key, value))
"""
Функция выводит переданные параметры в фиде key --> value
key - имя параметра
value - значение параметра
:param kwargs: любое количество именованных параметров
:return: None
"""
"""
name --> Max
age --> 21
"""
print_key_val(name='Max', age=21)
"""
animal --> Cat
is_animal --> True
"""
print_key_val(animal='Cat', is_animal=True)
def my_filter(iterable, function):
"""
(Усложненое задание со *)
Функция фильтрует последовательность iterable и возвращает новую
Если function от элемента последовательности возвращает True, то элемент входит в новую последовательность иначе нет
(примеры ниже)
:param iterable: входаня последовательности
:param function: функция фильтрации
:return: новая отфильтрованная последовательность
"""
pass
print(my_filter([1, 2, 3, 4, 5], lambda x: x > 3) == [4, 5]) # True
print(my_filter([1, 2, 3, 4, 5], lambda x: x == 2) == [2]) # True
print(my_filter([1, 2, 3, 4, 5], lambda x: x != 3) == [1, 2, 4, 5]) # True
print(my_filter(['a', 'b', 'c', 'd'], lambda x: x in 'abba') == ['a', 'b']) # True