import statistics print first part знайти кількість елементів масиві a

 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
import statistics
print("first part")
# - знайти кількість елементів в масиві
arr1 = [1, 3, 5, 6]
print(arr1, "->", len(arr1))
# - знайти кількість елементів в масиві рівних даному
arr1 = [1, 2, 1, 2, 1, 3]
print(arr1, "->", arr1.count(2))
arr3 = [1, 3, 5, 6, 8]
# - дано список чисел - знайти суму всіх елементів
print(arr3, "->", sum(arr3))
# - дано список чисел - знайти максимум елементів
print(arr3, "->", max(arr3))
# - дано список чисел - знайти середнє значення елементів масивів
print(arr3, "->", statistics.mean(arr3))
# - дано список чисел - сформувати рядок де всі ці числа записані через прогалену
print(arr3, "->", ' '.join(str(e) for e in arr3))
# - дано список чисел - сформувати список де елементи на парних позиціях перемножені на 2 а на не парних на 3
print(arr3, "->", list(map(lambda x: x * 2 if arr3.index(x) % 2 == 0 else x * 3, arr3)))
# # - дано список чисел - перевірити чи всі елементи кратні 7
print(arr3, "->", all(el % 7 == 0 for el in arr3))
arr4 = [7, 0, 14, 210]
print(arr4, "->", all(el % 7 == 0 for el in arr4))
# - дано список чисел - сформувати список з попереднього де видалені всі парні числа
print(arr3, "->", list(el for el in arr3 if el % 2 == 0))
# - дано текст (рядок) - розбити його на слова
s = "quick brown fox jumps over the lazy dog"
print(s, "->", s.split(' '))
# - дано список - повернути його частину починаючи з 5того елементу
l = [1, 3, 5, 6, 8, 7, 12, 1111, 19]
print(l, "->", l[5:])
# - дано список - повернути його частипу без 1шого і останнього елментів
print(l, "->", l[1:-1])
print("second part")
print('дано список чисел - сформувати словник де кожному числу відповідає кілікість раз це число зустрічається у списку')
arr1 = [6, 5, 3, 5, 9, 5, 4, 4, 3, 2, 7, 3, 6, 7, 2]
d = {el: arr1.count(el) for el in arr1}
print(f"{arr1}'->'{d}")
arr1 = [7, 7, 4, 2, 8, 9, 2, 6, 4, 8, 8, 5, 7, 3, 2]
d = {el: arr1.count(el) for el in arr1}
print(f"{arr1}'->'{d}")
print('дано список чисел - сформувати словник де кожному числу відповідає останній індекс входження такого числа')
arr1 = [7, 7, 4, 2, 8, 9, 2, 6, 4, 8, 8, 5, 7, 3, 2]
d = {el: arr1.index(el) for el in reversed(arr1)}
print(f"{arr1}'->'{d}")
arr1 = [4, 6, 4, 4, 6, 5, 7, 9, 6, 6, 5, 7, 5, 5, 3]
d = {el: arr1.index(el) for el in reversed(arr1)}
print(f"{arr1}'->'{d}")
print('дано список чисел - сформувати словник де кожному числу відповідає список індексів на яких воно зустрічається')
d = {el: [i for i, x in enumerate(arr1) if x == el] for el in set(arr1)}
print(f"{arr1}'->'{d}")
# ЗЫ: три останнi задачi ще не дороблено
# # - дано список рядків - сформувати список словників де кожен словник - це символ - кількість входжень
# "abracadabra somethingnewforus testandtestagain" -> [{'c': 1, 'd': 1, 'a': 5, 'r': 2, 'b': 2}, {'g': 1, 'n': 2, 'f': 1, 't': 1, 'u': 1, 'h': 1, 'm': 1, 'o': 2, 'e': 2, 'r': 1, 'i': 1, 's': 2, 'w': 1}, {'g': 1, 'n': 2, 't': 4, 'd': 1, 'e': 2, 'a': 3, 'i': 1, 's': 2}]
# - дано два словника ключ-число - додати ці словники (якщо ключ зустрічається в обох - то значення додати, інакше - ключ-значення)
# {2: 8, 5: 11, 7: 3, 1: 5, 45: 14}, {3: 13, 5: 10, 8: 2, 1: 3, 45: 8, 4: 14} -> {1: 8, 2: 8, 3: 13, 4: 14, 5: 21, 7: 3, 8: 2, 45: 22}
#
# # - дано два списки слів - повернути список слів, які зустрічаються в першому списку частіше ніж у другому
# ["q", "qq", "w", "w", "ww", "as"], ["a", "q", "qq", "qq", "ww"] -> ['as', 'w']