Skip to content

Commit 91bfe7c

Browse files
committed
Added Exam Preparation/Python OOP Retake Exam - 19 December 2022
1 parent 15cc414 commit 91bfe7c

File tree

21 files changed

+438
-0
lines changed

21 files changed

+438
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
class Band:
2+
3+
def __init__(self, name):
4+
self.name = name
5+
self.members = []
6+
7+
@property
8+
def name(self):
9+
return self.__name
10+
11+
@name.setter
12+
def name(self, value):
13+
if value == "":
14+
raise ValueError("Band name should contain at least one character!")
15+
16+
self.__name = value
17+
18+
def __str__(self):
19+
return f"{self.name} with {len(self.members)} members."
20+

OOP/C.Exam Preparation/Python OOP Retake Exam - 19 December 2022/Structure and Functionality/project/band_members/__init__.py

Whitespace-only changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
from project.band_members.musician import Musician
2+
3+
4+
class Drummer(Musician):
5+
6+
def learn_new_skill(self, new_skill):
7+
learnable_skills = ["play the drums with drumsticks", "play the drums with drum brushes", "read sheet music"]
8+
9+
if new_skill not in learnable_skills:
10+
raise ValueError(f"{new_skill} is not a needed skill!")
11+
12+
elif new_skill in self.skills:
13+
raise Exception(f"{new_skill} is already learned!")
14+
15+
self.skills.append(new_skill)
16+
return f"{self.name} learned to {new_skill}."
17+

0 commit comments

Comments
 (0)