-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path5-2-25(employee_management).py
51 lines (46 loc) · 1.69 KB
/
5-2-25(employee_management).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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
class employee:
def __init__(self, name, id, department, salary):
self.name = name
self.id = id
self.department = department
self.salary = salary
def display_info(self):
return f"Name: {self.name}, ID: {self.id}, Department: {self.department}, Salary: {self.salary}"
class manager(employee):
def __init__(self, name, id, department, salary,team_size=0,team_members=[]):
super().__init__(name, id, department, salary)
self.team_size = team_size
self.team_members = team_members
def display_info(self):
return f"{super().display_info()}, Team Size: {self.team_size}, Team Members: {self.team_members}"
def add_member(self, member):
self.team_members.append(member)
self.team_size += 1
return f"Added {member} to the team."
def remove_member(self, member):
self.team_members.remove(member)
self.team_size -= 1
return f"Removed {member} from the team."
def update_salary(self, salary):
self.salary = salary
return f"Updated salary to {salary}."
emp = employee("Alice Johnson", "E123", "Finance", 50000)
print("Employee Information:")
print(emp.display_info())
print()
mgr = manager("Bob Smith", "M456", "Engineering", 80000, 1, ["Tertho Ghosh"])
print("Manager Information:")
print(mgr.display_info())
print()
print(mgr.add_member("Charlie Brown"))
print(mgr.add_member("David Green"))
print("Updated Manager Information:")
print(mgr.display_info())
print()
print(mgr.remove_member("Charlie Brown"))
print("Updated Manager Information:")
print(mgr.display_info())
print()
print(mgr.update_salary(85000))
print("Final Manager Information:")
print(mgr.display_info())