-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathclass Student
More file actions
92 lines (68 loc) · 2.06 KB
/
Copy pathclass Student
File metadata and controls
92 lines (68 loc) · 2.06 KB
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# -*- coding: utf-8 -*-
class Subject:
def __init__(self, name, shortcut, points):
self._name = name
self._shortcut = shortcut
self._points = points
self._students = {}
def add_student(self, instance_of_student):
pass
def get_student(self, login):
pass
def remove_student(self, login):
pass
def get_best_student(self):
return None
def list_of_passed_students(self):
return []
class Student:
def __init__(self, name, login):
self._name = name
self._login = login
self._points = 0
def add_points(self, points):
pass
def get_name(self):
pass
def get_login(self):
pass
def get_points(self):
pass
def __str__(self):
return "My name is {} (with login {}) and I have {} points.".format(self._name, self._login, self._points)
def __repr__(self):
return self.__str__()
def main():
s1 = Student("Praotec Čech", "cec001")
s2 = Student("Praotec Slovak", "slo001")
s3 = Student("Praotec Čechomoravak", "cec002")
s4 = Student("Petr Novák", "Nov001")
print(s1)
print(s2)
print(s3)
print(s4)
spja = Subject("Skriptovací programovací jazyky a jejich aplikace", "SPJA", 6)
spja.add_student(s1)
spja.add_student(s2)
spja.add_student(s3)
spja.add_student(s4)
s1.add_points(5)
s1.add_points(5)
s2.add_points(6)
s2.add_points("5")
s3.add_points(3)
print()
print(s1)
print(s2)
print(s3)
print(s4)
print()
best = spja.get_best_student()
if best is not None:
print("Nejlepší student: {1} {0} [{2}] b".format(best.get_name(), best.get_login(), best.get_points()))
passed = spja.list_of_passed_students()
print("List of passed students:")
for student in passed:
print ("\t[{} b]\t{}: {}".format(student.get_points(), student.get_login(), student.get_name()))
if __name__ == "__main__":
main()