Թրենդային տեսանյութեր
Դուք Vevo ընկերությունում աշխատանքի եք ընդունվել որպես ՏՏ նոր ղեկավար։ Vevo-ն երաժշտական տեսահոլովակների ոլորտում առաջատար մատակարար է: Նրանք ունեն երգերի, ֆիլմերի և երաժշտական տեսահոլովակների ընդարձակ գրադարան։ Սակայն կարիք կա դասավորելու եղած տվյալները, ուստի ընկերությունը ձեր օգնության կարիքն ունի՝ առկա բովանդակությունն ավելի լավ դասակարգելու և կառավարելու համար:
Այստեղ հիմնական առաջադրանքը class-ների շարք սահմանելն է՝ դրանց բովանդակությունը դասակարգելու համար: Ընկերությունը նաև ցանկանում են իմանալ, թե իրենց տեսանյութերից որն է թրենդային: Տեսանյութը համարվում է թրենդային, եթե վերջին 24 ժամվա ընթացքում այն ունի ավելի քան 1 միլիոն դիտում:
Նախ, ստեղծեք Multimedia class՝ duration ատրիբուտով և play() մեթոդով: Որպես հաջորդ քայլ՝ սահմանեք երկու այլ class-ներ՝ Song և Movie, որոնք ժառանգում են Multimedia-ից, որոնցից յուրաքանչյուրն ունի իր ուրույն ատրիբուտները, օրինակ՝ artist (Song-ի համար) և director (Movie-ի համար): Այնուհետև ստեղծեք MusicVideo class, որը ժառանգվում է և՛ Song-ի, և՛ Movie-ի կողմից՝ ավելացնելով հատուկ ատրիբուտներ այս class-ին՝ view_count և views_last_24_hours:
Դուք պետք է փոփոխեք __str__() մեթոդը ձեր class-ներում: Print-ի ժամանակ, դասի օբյեկտը պետք է տպի հետևյալը`
MusicVideo-ի համար - "Music video title: [title], Artist: [artist], Director: [director], Duration: [duration] minutes, Total views: [view_count], Views in last 24 hours: [views_last_24_hours]."Song-ի համար - "Song title: [title], Artist: [artist], Duration: [duration] minutes."Movie-ի համար - "Movie title: [title], Director: [director], Duration: [duration] minutes."
MusicVideo-ի is_trending() մեթոդը պետք է տպի սրանցից մեկը՝
"[title] by [artist] is trending."
"[title] by [artist] is not trending."
Մուտք | Ելք |
|---|---|
| Music video title: Beat It, Artist: Michael Jackson, Director: John Landis, Duration: 13.2 minutes, Total views: 1002000000, Views in last 24 hours: 1500000. |
Հուշում
Փորձեք խուսափել super() օգտագործելուց բազմակի ժառանգականության դեպքում: Վերանայեք «Բազմակի ժառանգականություն» դասը, որպեսզի վերհիշեք __init__() մեթոդի ներսում փոփոխականներին արժեքներ տալը կարգավորելու ճիշտ եղանակը բազմակի ժառանգականության դեպքում:
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB