Video di tendenza
Sei stato assunto come nuovo Responsabile IT presso Vevo: il leader globale nella fornitura di video musicali. Hanno un'immensa libreria di canzoni, film e video musicali. Tuttavia, i dati sono disorganizzati e hanno bisogno del tuo aiuto per categorizzare e gestire meglio i loro contenuti.
La sfida principale consiste nel definire una serie di classi per categorizzare i loro contenuti. Inoltre, vogliono sapere quali dei loro video sono di tendenza. Un video è considerato di tendenza se ha più di 1 milione di visualizzazioni nelle ultime 24 ore.
Inizia creando una classe
Multimedia
con un attributo duration
e un metodo play()
. Successivamente, definisci altre due classi, Song
e Movie
, che ereditano da Multimedia
, ognuna con i propri attributi unici come artist
per Song
e director
per Movie
. Dopodiché, crea una classe MusicVideo
che eredita sia da Song
che da Movie
, aggiungendo attributi specifici per questa classe come view_count
e views_last_24_hours
.Devi sovrascrivere il metodo
__str__()
nelle tue classi. Quando un'istanza di una classe viene stampata, dovrebbe visualizzare quanto segue:- Per
MusicVideo
: "Titolo video musicale: [title], Artista: [artist], Regista: [director], Durata: [duration] minuti, Visualizzazioni totali: [viewcount], Visualizzazioni nelle ultime 24 ore: [viewslast24hours]."
- Per
Song
: "Titolo canzone: [title], Artista: [artist], Durata: [duration] minuti."
- Per
Movie
: "Titolo film: [title], Regista: [director], Durata: [duration] minuti."
Il metodo
is_trending()
per MusicVideo
dovrebbe stampare:- "[title] di [artist] è di tendenza."
- "[title] di [artist] non è di tendenza."
Input | Output |
multimedia=Multimedia(3.5); song=Song('Beatles', 'Let It Be', 4); movie=Movie('George Harrison', 'A Hard Days Night', 92); music_video=MusicVideo('Michael Jackson', 'Beat It', 'John Landis', 13.2, 1002000000, 1500000); print(music_video); print(song); print(movie); music_video.is_trending(); movie.play() | Music video title: Beat It, Artist: Michael Jackson, Director: John Landis, Duration: 13.2 minutes, Total views: 1002000000, Views in last 24 hours: 1500000.
Song title: Let It Be, Artist: Beatles, Duration: 4 minutes.
Movie title: A Hard Days Night, Director: George Harrison, Duration: 92 minutes.
Beat It by Michael Jackson is trending.
Playing media |
Suggerimento
Cerca di evitare l'uso di
super()
quando lavori con l'ereditarietà multipla. Torna alla lezione sull'Ereditarietà Multipla per rivedere il modo corretto di gestire l'inizializzazione all'interno del metodo __init__()
in caso di ereditarietà multipla.Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB