Videos en Tendencia
Has sido contratado como el nuevo Jefe de TI en Vevo, el proveedor líder global de videos musicales. Tienen una extensa biblioteca de canciones, películas y videos musicales. Sin embargo, los datos están desorganizados y necesitan tu ayuda para categorizar y gestionar mejor su contenido.
El principal desafío aquí es definir una serie de clases para categorizar su contenido. Además, quieren saber cuáles de sus videos están en tendencia. Un video se considera en tendencia si tiene más de 1 millón de vistas en las últimas 24 horas.
Primero, crea una clase
Multimedia
con un atributo duration
y un método play()
. Luego, define otras dos clases, Song
y Movie
, que heredan de Multimedia
, cada una con sus atributos únicos como artist
para Song
y director
para Movie
. Después, crea una clase MusicVideo
que herede de ambas, Song
y Movie
, añadiendo atributos específicos para esta clase: view_count
y views_last_24_hours
.Debes sobreescribir el método
__str__()
en tus clases. Al imprimir una instancia de una clase, debería mostrar lo siguiente:- Para
MusicVideo
: "Título del video musical: [title], Artista: [artist], Director: [director], Duración: [duration] minutos, Visualizaciones totales: [viewcount], Visualizaciones en las últimas 24 horas: [viewslast24hours]."
- Para
Song
: "Título de la canción: [title], Artista: [artist], Duración: [duration] minutos."
- Para
Movie
: "Título de la película: [title], Director: [director], Duración: [duration] minutos."
El método
is_trending()
para MusicVideo
debe imprimir:- "[title] de [artist] está en tendencia."
- "[title] de [artist] no está en tendencia."
Entrada | Salida |
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 |
Consejo
Intenta evitar el uso de
super()
cuando trabajes con herencia múltiple. Vuelve a la lección de Herencia Múltiple para repasar la forma adecuada de manejar la inicialización dentro del método __init__()
para herencia múltiple.Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB