-
Notifications
You must be signed in to change notification settings - Fork 2
Tema 2
-
Creează clasa
BookStorecare primește la inițializare un URL către un document XML cu acest format. Această clasă va avea atributulbooks- o listă de obiecteBook, cu următoarele atribute:title,author,publisher,language,isbn,quantity,pages,price,publication_date,categoryale căror valori sunt preluate din sursa de date și convertite la tipul de date corespunzător. -
Implementează metoda
searchcare va căuta un substring în titlurile cărților din librărie și va returna prima carte care corespunde căutării sauNonedacă nu a găsit niciun rezultat. Această metodă va funcționa în 2 variante, case-sensitive și non-case-sensitive. -
Implementează metoda
buycare primește ca parametri o carte și cantitatea. Aceasta va returna prețul final al tranzacției și va micșora stocul pentru cartea respectivă. -
Implementează metoda
order_bycare va reordona (in place) cărțile din librărie după orice atribut al unei cărți. -
Implementează proprietatea
total_costcare returnează costul total al cărților din librărie. -
Adaugă atributul
categoriespe clasaBookStore, care va fi un dicționar de forma{code: description}. Implementează proprietateacategories_countcare returnează un dicționar de forma{category_description: number_of_books_in_that_category}. -
Ce neajunsuri crezi că are implementarea propusă? Cum ai fi modelat librăria, pornind de la documentul XML dat?
-
Cât timp ți-a luat această temă? Care a fost dificultatea ei? Care puncte ți-au dat bătăi de cap?
- Ultimele două exerciții sunt parte din temă și răspunsurile se punctează. Nu sunt opționale!
- Folosește șablonul pus la dispoziție și fă toate testele să treacă, fără a le modifica.
- Amintește-ți subiectele discutate la cursul Noțiuni specifice Python, îți vor fi de folos pentru această temă.
- Nu uita de PEP8!