PYTHON - ΜΑΘΗΜΑ 16 - OOP: ΚΛΑΣΕΙΣ - Μέρος 9 από 16 - Άσκηση 8

preview_player
Показать описание
ΠΕΡΙΕΧΟΜΕΝΑ ΒΙΝΤΕΟ:
1. Αντικειμενοστραφής Προγραμματισμός (OOP)
Άσκηση 8
=====================================
ΠΕΡΙΕΧΟΜΕΝΑ ΜΑΘΗΜΑΤΟΣ:
1. Αντικειμενοστραφής Προγραμματισμός (OOP)
1.1. Κλάσεις
1.2. Μέλη Κλάσης και η μέθοδος __init__()
1.3. Μέθοδοι Κλάσης
1.4. Δημόσια και Ιδιωτική Πρόσβαση
1.5. Σχέση “έχει” μεταξύ κλάσεων
1.6. Παρατηρήσεις
2. Algorithm: Quick Sort (Γρήγορη Ταξινόμηση)
3. Data Structures: Stack (Στοίβα)
4. Game Project: WoW Part 1
5. Data Project: CRUD – Refactoring
Рекомендации по теме
Комментарии
Автор

To next round γινεται και ετσι

def next_second(self):
second = self.second + 1
minute = self.minute
hour = self.hour
if second == 60:
minute = self.minute + 1
seconond = 0
if minute == 60:
hour = self.hour + 1
minute = 0
return Time(hour, minute, second)

vasilis
Автор

def next_sec(self):
x = Time(self.hour, self.minute, self.second).total_sec() + 1
h = x // 3600
m = (x % 3600) // 60
s = (x % 3600) % 60
return Time(h, m, s)

Καλησπερα, το αντικειμενο x ειναι λαθος να δημιουργειτε εντος της κλασης;

panagiotistsikos
Автор

Γιατί για να εκτυπωθεί το next_second χρειάζεται να το προσθέσω στην print; Eφόσον καλώ ένα αντικείμενο της Time και η next_second είναι μέθοδος μέσα σε αυτήν δεν θα έπρεπε να μου τα εκτυπώνει και τα δύο;

nickandono
Автор

Καλησπέρα σας, μπορείτε να μου εξηγήσετε γιατί χρησιμοποιούμε setters σε αυτή την άσκηση; Διότι ακόμη και χωρίς αυτούς το πρόγραμμα φαίνεται να λειτουργεί κανονικά. Ευχαριστώ εκ των προτέρων!

epicdestroyerxd
Автор

Τα setters που δημιουργήσαμε προφανώς ειναι για εκπαιδευτικούς λόγους διότι αν δεν κανω λάθος δεν μας χρειάζονται για την σωστή λειτουργία του προγραμματος.Σωστά;

EldoForgeRealm
Автор

Καλησπέρα σας,
Με την πρώτη σκέψη έφτιαξα αυτό εδώ όμως δεν δουλεύει και δεν μπορούσα να καταλάβω γιατί.
def next_second(self):
second = self.second + 1
if second == 60:
minute = self.minute + 1
second = 0
if minute == 60:
hour = self.hour + 1
minute = 0
if hour == 60:
self.hour = 0

return Time(hour, minute, second)

heisenberg