1
0
forked from tdwojak/Python2017
Python2017/labs04
2017-12-03 15:18:22 +01:00
..
Klasy.ipynb Add labs4 2017-12-03 13:05:05 +01:00
README.md Add labs4 2017-12-03 13:05:05 +01:00
task01.py labs04 z1 2017-12-03 15:18:22 +01:00
task02.py Add labs4 2017-12-03 13:05:05 +01:00
task03.py Add labs4 2017-12-03 13:05:05 +01:00

ćwiczenie 1 Napisz funckję is_numeric, która sprawdzi, czy każdy element z przekazanej listy jest typu int lub float. Wykorzystaj funcję isinstance() (https://docs.python.org/2/library/functions.html#isinstance).

ćwiczenie 2 Napisz prostą hierarchię klas:

  • Klasa bazowa Employee, która będzie zawierać informacje o imieniu i nazwisku pracownika. Ponadto każdy pracownik otrzyma numer id, który będzie unikatowy. Wykorzystaj do tego atrybut statyczny. Napisz metodę get_id, która zwraca identyfikator pracownika.
  • Klasy pochodna: Recruiter, która ma dodatkową mtodę recruit, która jako parament przyjmuje obiekt Employee i zapisuje jego id w liście self.recruited.
  • Klasa pochodna Programmer. Klasa Programmer ma przyjąć w konstruktorze podstawowe informacje (imię i nazwisko) oraz obiekt rekturera. Ponadto stwórz atrybut recruiter, który będzie przechowywać id rekrutera.

**ćwiczenie 3 (zadanie domowe) ** Stwórz klasę Point, która będzie reprezentować punkt w przestrzeni wielowymiarowej:

  • Konstruktor ma przyjąc tylko 1 parametr: listę współrzednych. Wykorzystaj funkcję z pierwszego zadania, żeby sprawdzić, czy lista zawiera wyłącznie liczby.
  • Napisz metodę add, która dida dwa punkty po współrzędnych i zwróci obiekt typu Punkt. Zaimplementuj własny wyjątek DimensionError, który zostaje wyrzucony, jeżeli dodawany punkt ma inny wymiar.
  • Napisz metodę to\_string, która zwróci łancuch znakowy, który w czytelny sposób przedstawi punkt.
  • Napisz metodę len, która zwróci liczbę współrzędnych punktu. Zobacz, czy możesz teraz wywołać funkcję len na obiekcie typy punkt.
  • Napisz metodę str, która bedzie działać dokładnie tak samo jak metoda to_string. Wyświetl obiekt typy Point korzystając z funkcji print.