File tree Expand file tree Collapse file tree 2 files changed +62
-0
lines changed
Expand file tree Collapse file tree 2 files changed +62
-0
lines changed Original file line number Diff line number Diff line change 1+ from pathlib import Path
2+
3+ from rson import load
4+
5+
6+ HERE = Path (__file__ ).parent .resolve ()
7+
8+
9+ with open (f"{ HERE } /teams.rson" ) as f :
10+ team = load (f )[0 ]
11+
12+ target_role_name = input ("Which role to look for? " )
13+
14+ for role in team ["roles" ]:
15+ if role ["name" ].lower () == target_role_name .lower ():
16+ target_role = role
17+ break
18+ else :
19+ print ("Could not find role " + target_role_name )
20+ exit ()
21+
22+ members_with_role = [
23+ member for member in team ["members" ]
24+ if member ["role" ] is target_role # <- note the identity check here
25+ ]
26+
27+ print (f"Found { len (members_with_role )} members with role { role ['name' ]} :" )
28+ for i , member in enumerate (members_with_role ):
29+ print (f"\t { i } . { member ['name' ]} " )
Original file line number Diff line number Diff line change 1+ [
2+ {
3+ "members": [
4+ {
5+ "name": "Alice",
6+ "role": $ROLE_DEVELOPER
7+ },
8+ {
9+ "name": "Bob",
10+ "role": $ROLE_MANAGER
11+ },
12+ {
13+ "name": "Charlie",
14+ "role": $ROLE_DESIGNER
15+ },
16+ {
17+ "name": "David",
18+ "role": $ROLE_DEVELOPER
19+ }
20+ ],
21+ "roles": [
22+ {
23+ "name": "Developer"
24+ }(ROLE_DEVELOPER),
25+ {
26+ "name": "Designer"
27+ }(ROLE_DESIGNER),
28+ {
29+ "name": "Manager"
30+ }(ROLE_MANAGER)
31+ ]
32+ }
33+ ]
You can’t perform that action at this time.
0 commit comments