Мне нужен список со следующим поведением
>>> l = SparseList()
>>> l
[]
>>> l[2] = "hello"
>>> l
[ None, None, "hello"]
>>> l[5]
None
>>> l[4] = 22
>>> l
[ None, None, "hello", None, 22]
>>> len(l)
5
>>> for i in l: print i
None
None
"hello"
None
22
Хотя он может "эмулироваться" через словарь, он не совсем то же самое. массив numpy может вести себя таким образом, но я не хочу импортировать весь numpy для чего-то подобного. Перед его кодированием я спрашиваю, существует ли что-то подобное в стандартной библиотеке.