-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlogic_test_2.py
32 lines (25 loc) · 1.04 KB
/
logic_test_2.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
import json
with open('source_file_2.json', 'r') as source_file:
source_text = source_file.read()
source_data = json.loads(source_text)
ordered_priority_data = sorted(source_data, key=lambda k: k['priority'])
managers_projects = {}
watchers_projects = {}
for project in ordered_priority_data:
for manager in project['managers']:
if manager in managers_projects:
managers_projects[manager].append(project['name'])
else:
managers_projects[manager] = [project['name']]
for watcher in project['watchers']:
if watcher in watchers_projects:
watchers_projects[watcher].append(project['name'])
else:
watchers_projects[watcher] = [project['name']]
with open('watchers.json', 'w') as output_file_1:
output_file_1.write(json.dumps(managers_projects, indent=4, sort_keys=True))
with open('managers.json', 'w') as output_file_2:
output_file_2.write(json.dumps(watchers_projects, indent=4, sort_keys=True))
source_file.close()
output_file_1.close()
output_file_2.close()