Mam listę list zawierających elementy [yyyy, wartość], z każdą listą podkatalogów uporządkowaną według rosnących lat. Oto przykład:Wstaw brakujące daty, zachowując kolejność daty na liście Pythona.
A = [
[[2008, 5], [2009, 5], [2010, 2], [2011, 5], [2013, 17]],
[[2008, 6], [2009, 3], [2011, 1], [2013, 6]], [[2013, 9]],
[[2008, 4], [2011, 1], [2013, 4]],
[[2010, 3], [2011, 3], [2013, 1]],
[[2008, 2], [2011, 4], [2013, 1]],
[[2009, 1], [2010, 1], [2011, 3], [2013, 3]],
[[2010, 1], [2011, 1], [2013, 5]],
[[2011, 1], [2013, 4]],
[[2009, 1], [2013, 4]],
[[2008, 1], [2013, 3]],
[[2009, 1], [2013, 2]],
[[2013, 2]],
[[2011, 1], [2013, 1]],
[[2013, 1]],
[[2013, 1]],
[[2011, 1]],
[[2011, 1]]
]
Co potrzebne jest, aby wstawić wszystkie brakujące lata pomiędzy min (rok) i max (rok) i upewnić się, że kolejność jest zachowana. Tak więc, na przykład, zajmując pierwsze podmenu A:
[2008, 5], [2009, 5], [2010, 2], [2011, 5], [2013, 17]
powinna wyglądać następująco:
[min_year, 0]...[2008, 5], [2009, 5], [2010, 2], [2011, 5], [2012, 0],[2013, 17],..[max_year, 0]
Ponadto jeżeli podlistę zawiera tylko jeden element, a następnie ten sam proces powinien być stosowany do tak, aby pierwotna wartość zachowała swoją rzekomą kolejność, a reszta wartości min do max (rok, wartość) została poprawnie wstawiona.
Wszelkie pomysły?
Dzięki.
Dzięki @ Tehsockz .. ten działał. idealny. – user2480542