Код:
class Student:
def __init__(self, name, surname, group_number, great):
self.name = name
self.surname = surname
self.group_number = group_number
self.great = great
class ValidationError(Exception):
pass
@property
def name(self):
return self._name
@name.setter
def name(self, value):
if not isinstance(value, str):
raise ValidationError
self._name = value
s1 = Student(76, 'Ivanov', 76, [4, 7, 8, 2, 4])
print(s1.name)
Здравствуйте!
Делаю следующую задачу и возник вопрос: Ввожу int для поля name, но ошибка не отображается. В чем может быть проблема, возможно не так обращаюсь?
Создайте класс Student, содержащий поля: фамилия и имя, номер группы, успеваемость (массив из пяти элементов, каждый элемент число от 1 до 10).
Проверить что фамилия и имя строки через property. Если не строка, вызываем ошибку ValidationError.