Rozszerzanie klasy
W poprzednim ćwiczeniu zdefiniowałeś klasę Employee z dwoma atrybutami i dwiema metodami, które te atrybuty ustawiają. Pamiętaj – metody to funkcje, więc wszystko, co możesz zrobić z funkcją, możesz też zrobić z metodą.
Na przykład metody mogą zwracać wartości, wyświetlać dane lub tworzyć wykresy – o ile dane zachowanie jest odpowiednie dla obiektów danej klasy. Na przykład klasa Employee raczej nie potrzebuje metody pivot_table().
W tym ćwiczeniu nauczysz się, jak używać istniejących atrybutów klasy do definiowania nowych metod. Klasa Employee oraz obiekt emp z poprzedniego ćwiczenia są już dostępne w pliku script.py.
To ćwiczenie jest częścią kursu
Wprowadzenie do programowania obiektowego w Pythonie
Instrukcje do ćwiczenia
- Dodaj metodę
give_raise()do klasyEmployee, która zwiększa wynagrodzenie o wartość przekazaną jako argumentamount. - Utwórz obiekt
emp. - Wyświetl atrybut
salaryobiektuemp. - Wywołaj metodę
give_raise()na obiekcieemp, podnosząc wynagrodzenie o1500.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
class Employee:
def set_name(self, new_name):
self.name = new_name
def set_salary(self, new_salary):
self.salary = new_salary
# Add a give_raise() method with amount as an argument
____ ____(____, ____):
____.____ = ____.____ + ____
# Create the emp object
emp = ____
emp.set_name('Korel Rossi')
emp.set_salary(50000)
# Print the salary
print(____.____)
# Give emp a raise of 1500
____.____(____)
print(emp.salary)