Skip to content

Commit 00c679a

Browse files
committed
Add example code
1 parent 35d3f59 commit 00c679a

File tree

2 files changed

+62
-0
lines changed

2 files changed

+62
-0
lines changed

examples/teams.py

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
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']}")

examples/teams.rson

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
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+
]

0 commit comments

Comments
 (0)