Construirea unei clase BetterDate
Dezvolți un pachet pentru serii de timp și vrei să definești propria clasă pentru lucrul cu date calendaristice: BetterDate.
Atributele clasei vor fi year, month și day. Vrei să ai un constructor care creează obiecte BetterDate pe baza valorilor pentru an, lună și zi, dar și posibilitatea de a crea obiecte BetterDate din șiruri de caractere, precum 2021-04-30.
Acest exercițiu face parte din cursul
Introducere în Programarea Orientată pe Obiecte în Python
Instrucțiuni pentru exercițiu
- Definește metoda de clasă
from_str(), specificând argumentul special obligatoriu și un altul numitdatestr. - Împarte
datestrdupă cratimele"-"și stochează rezultatul în variabilaparts. - Returnează
year,monthșiday, în această ordine, folosind cuvântul-cheie care va apela și__init__(). - Creează variabila
xmasfolosind metoda.from_str()a clasei, furnizând șirul"2024-12-25".
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
class BetterDate:
def __init__(self, year, month, day):
self.year, self.month, self.day = year, month, day
# Define a class method from_str
____
____
# Split the string at "-"
parts = datestr.____("____")
year, month, day = int(parts[0]), int(parts[1]), int(parts[2])
# Return the class instance
____ ____(____, ____, ____)
# Create the xmas object
xmas = ____.____("____")
print(xmas.year)
print(xmas.month)
print(xmas.day)