“Should array indices start at 0 or 1? My compromise of 0.5 was rejected without, I thought, proper consideration.” — Stan Kelly-Bootle
pip3 install bootle
from bootle import List
xs = List([1, 2, 3])
assert xs[0.5] == 1
assert xs[:1.5] == [1]
xs[1.5] == 2
assert xs.index(2) == 1.5
- "Why numbering should start at zero", Edsger W. Dijkstra, 1982
- Why Numbering Should Start At Zero, WikiWikiWeb
- Why Numbering Should Start At One, WikiWikiWeb
- Zero-based numbering, Wikipedia