|
| 1 | +from datetime import datetime |
| 2 | +import heapq |
| 3 | + |
| 4 | +numbers = [0, -1, 1, -2, 2, -3, 3, -4, 4, -5, 5, -6, 6] |
| 5 | +dates = [datetime(2018, 1, 23, 0, 0), |
| 6 | + datetime(2017, 12, 19, 0, 0), |
| 7 | + datetime(2017, 10, 15, 0, 0), |
| 8 | + datetime(2019, 2, 27, 0, 0), |
| 9 | + datetime(2017, 3, 29, 0, 0), |
| 10 | + datetime(2018, 8, 11, 0, 0), |
| 11 | + datetime(2018, 5, 3, 0, 0), |
| 12 | + datetime(2018, 12, 19, 0, 0), |
| 13 | + datetime(2018, 11, 19, 0, 0), |
| 14 | + datetime(2017, 7, 7, 0, 0)] |
| 15 | +# https://www.forbes.com/celebrities/list |
| 16 | +earnings_mln = [ |
| 17 | + {'name': 'Kevin Durant', 'earnings': 60.6}, |
| 18 | + {'name': 'Adele', 'earnings': 69}, |
| 19 | + {'name': 'Lionel Messi', 'earnings': 80}, |
| 20 | + {'name': 'J.K. Rowling', 'earnings': 95}, |
| 21 | + {'name': 'Elton John', 'earnings': 60}, |
| 22 | + {'name': 'Chris Rock', 'earnings': 57}, |
| 23 | + {'name': 'Justin Bieber', 'earnings': 83.5}, |
| 24 | + {'name': 'Cristiano Ronaldo', 'earnings': 93}, |
| 25 | + {'name': 'Beyoncé Knowles', 'earnings': 105}, |
| 26 | + {'name': 'Jackie Chan', 'earnings': 49}, |
| 27 | +] |
| 28 | + |
| 29 | + |
| 30 | +def get_largest_number(numbers, n=3): |
| 31 | + return heapq.nlargest(n, numbers) |
| 32 | + |
| 33 | + |
| 34 | +def get_latest_dates(dates, n=3): |
| 35 | + return heapq.nlargest(n, dates) |
| 36 | + |
| 37 | + |
| 38 | +def get_highest_earnings(earnings_mln, n=3): |
| 39 | + return heapq.nlargest(n, earnings_mln, key=lambda x: x['earnings']) |
| 40 | + |
0 commit comments