-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathModule2.py
More file actions
53 lines (45 loc) · 1.55 KB
/
Module2.py
File metadata and controls
53 lines (45 loc) · 1.55 KB
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
# Variant 17
class Znak:
def __init__(self, name, zodiac, birth):
self.name = name
self.zodiac = zodiac
self.birth = birth
def make_dict(self):
params = {
"name": self.name,
"zodiac": self.zodiac,
"birth": self.birth,
}
return params
znaki = list([])
for i in range(1, 9):
n = input("Enter name for Person #"+str(i)+"\n")
g = input("Enter zodiac for Person #"+str(i)+"\n")
gr = [input("Enter birth day for Person #" + str(i) + "\n"),
input("Enter birth month for Person #" + str(i) + "\n"),
input("Enter birth year for Person #" + str(i) + "\n")]
a = Znak(n, g, gr)
znaki.append(a.make_dict())
print(znaki)
arr = []
for i in range(len(znaki)):
arr.append([znaki[i]['name'], znaki[i]['zodiac'], znaki[i]['birth']])
# сортування
print("Sort by zodiac and birth: Name | Zodiac | Birth")
print("\nBefore:")
print(arr)
print("\nAfter:")
sorted_arr = sorted(arr, key=lambda x: (x[1], x[2]))
print(sorted_arr)
# вивід за умовою
qualified = []
user_search = input("Enter month:\n")
for i in range(len(sorted_arr)):
if sorted_arr[i][2][1] == user_search:
qualified.append(sorted_arr[i])
print("\n\nPersons with entered month: Name / Zodiac / Birth")
if len(qualified) == 0:
print("There are no persons born in this month")
else:
for i in range(0, len(qualified)):
print(f'\n\n{str(qualified[i][0])} / {str(qualified[i][1])} / {str(qualified[i][2])}')