Yevhenii Mianovskyi - corrections

  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
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
# - знайти кількість елементів в масиві
my_list = [1, 3, 5, 6]
items = 0
for item in my_list:
items+= 1
print(items)
# - знайти кількість елементів в масиві рівних даному
#[1, 2, 1, 2, 1, 3], 2 -> 2
my_list = [1, 2, 1, 2, 1, 3]
number = 2
elements = [item for item in my_list if item == number]
cnt = 0
for item in elements:
cnt += 1
print(cnt)
# - дано список чисел - знайти середнє значення елементів масивів
[1, 3, 5, 6, 8] -> 4.6
my_list = [1, 3, 5, 6, 8]
total = 0
for item in my_list:
total += item
elements = 0
for item in my_list:
elements += 1
try:
average = total / elements
print(average)
except:
print('The list is empty')
# - дано список чисел - сформувати словник де кожному числу відповідає кілікість раз це число зустрічається у списку
my_list = [6, 5, 3, 5, 9, 5, 4, 4, 3, 2, 7, 3, 6, 7, 2]
my_dict = {}
for item in my_list:
if item not in my_dict.keys():
my_dict[item] = 1
elif item in my_dict.keys():
my_dict[item] += 1
print(my_dict)
# - дано список чисел - сформувати словник де кожному числу відповідає останній індекс входження такого числа
my_list = [4, 6, 4, 4, 6, 5, 7, 9, 6, 6, 5, 7, 5, 5, 3]
my_dict = {}
for index ,key in enumerate(my_list):
my_dict[key] = index
print(my_dict)
# - дано список чисел - сформувати словник де кожному числу відповідає список індексів на яких воно зустрічається
my_list = [4, 6, 4, 4, 6, 5, 7, 9, 6, 6, 5, 7, 5, 5, 3]
my_dict = {}
for index , key in enumerate(my_list):
if key not in my_dict.keys():
my_dict[key] = [index]
elif key in my_dict.keys():
my_dict[key].append(index)
print(my_dict)
# - дано список рядків - сформувати список словників де кожен словник - це символ - кількість входжень
["abracadabra", "somethingnewforus", "testandtestagain"]
my_list = ["abracadabra", "somethingnewforus", "testandtestagain"]
new_list = []
for word in my_list:
my_dict = {}
for char in word:
if char not in my_dict.keys():
my_dict[char] = 1
elif char in my_dict.keys():
my_dict[char] += 1
new_list.append(my_dict)
print(new_list)
# - дано два словника ключ-число - додати ці словники (якщо ключ зустрічається в обох - то значення додати, інакше - ключ-значення)
{2: 8, 5: 11, 7: 3, 1: 5, 45: 14}, {3: 13, 5: 10, 8: 2, 1: 3, 45: 8, 4: 14}
dict1 = {2: 8, 5: 11, 7: 3, 1: 5, 45: 14}
dict2 = {3: 13, 5: 10, 8: 2, 1: 3, 45: 8, 4: 14}
dict3 = {}
for key in dict1.keys():
if key in dict2.keys(): # sum of the intersection of two dicts
dict3[key] = dict1[key] + dict2[key]
else: # appending items in dict1 that are missing in dict2
dict3[key] = dict1[key]
for key in dict2.keys(): # appending missing items from dict 2
if key not in dict3.keys():
dict3[key] = dict2[key]
print(dict3)
# - дано два списки слів - повернути список слів, які зустрічаються в першому списку частіше ніж у другому
["q", "qq", "w", "w", "ww", "as"], ["a", "q", "qq", "qq", "ww"] -> ['as', 'w']
list1 = ["q", "qq", "w", "w", "ww", "as"]
list2 = ["a", "q", "qq", "qq", "ww"]
dict1 = {}
for item in list1: #counting items in the first list
if item not in dict1.keys():
dict1[item] = 1
elif item in dict1.keys():
dict1[item] += 1
dict2 = {}
for item in list2: #counting items in the second list
if item not in dict2.keys():
dict2[item] = 1
elif item in dict2.keys():
dict2[item] += 1
values =[key for key in dict1.keys() if dict1.get(key,0) > dict2.get(key,0)]
print(values)