do funkcji update() przekazano przez parametr słownik zawierający dane środków trwałych w przedsiębiorstwie. Kluczami słownika są numery ewidencyjne przedmiotów, zaś wartościami są dwuelementowe listy, w których pierwszy element to nazwa środka trwałego, a drugi element to data jego zakupu, w formacie "RRRRMMDD". Funkcja powinna usunąć ze słownika wszystkie elementy odnoszące się do środków trwałych zakupionych dawniej niż w przeciągu ostatnich pięciu lat licząc od aktualnej, dzisiejszej daty i zwrócić tak zmodyfikowany słownik. Przykład, dla daty 2020.02.01:
from datetime import datetime, timedelta
def update(assets):
# Pobieramy aktualną datę
today = datetime.today()
# Obliczamy datę pięciu lat temu
five_years_ago = today - timedelta(days=365*5)
# Formatujemy datę pięciu lat temu do postaci "RRRRMMDD"
five_years_ago_str = five_years_ago.strftime('%Y%m%d')
# Przeglądamy wszystkie elementy słownika
for key in list(assets.keys()):
# Jeżeli data zakupu środka trwałego jest wcześniejsza niż pięć lat temu
if assets[key][1] < five_years_ago_str:
# Usuwamy ten element ze słownika
del assets[key]
# Zwracamy zmodyfikowany słownik
return assets