#ć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 doda 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.
#funkcja z pierwszego zadania, żeby sprawdzić, czy lista zawiera wyłącznie liczby
defis_numeric(list):
foriinlist:
if(isinstance(i,(int,float))==True):
returnTrue
else:
returnFalse
# wyjątek DimensionError, który zostaje wyrzucony, jeżeli dodawany punkt ma inny wymiar
classDimensionError(Exception):
def__init__(self,text):
self.text=text
# klasa
classPoint:
def__init__(self,coordinates):
iflen(coordinates)!=3:
raiseDimensionError('Wrong coordinates')
else:
self.coordinates=coordinates
# funkcja add, która doda dwa punkty do współrzędnych i zwróci obiekt typu Punkt
defadd(c1,c2):
coordinates=[]
iflen(c1)!=len(c2):
foriinrange(0,len(c1)):
coordinates.append(c1[i]+c2[i])
returncoordinates
# funkcja to_string, która zwróci łancuch znakowy,