On Aug 7, 9:10 am, Steven D'Aprano <st...@remove-this- cybersource.com.au> wrote: > On Sat, 07 Aug 2010 08:54:28 -0400, D'Arcy J.M. Cain wrote: > > On Sat, 07 Aug 2010 13:48:32 +0200 > > News123 <news1...@free.fr> wrote: > >> It makes sense in assembly language and even in many byte code > >> languages. It makes sense if you look at the internal representation of > >> unsigned numbers (which might become an index) > > >> For a complete beginner common sense dictates differently and there > >> might be confusion why the second element in a list has index 1. > > > Would said beginner also be surprised that a newborn baby is zero years > > old or would it be more natural to call them a one year old? Zero based > > counting is perfectly natural. > > There's nothing natural about saying that a baby is zero years old. A > newborn baby is "a newborn baby", then it's "one day old", "two days > old", ... "one month old", "two months old", ... "one year old".
Well not if you are referring to how people "say" things. But what people "say" and the facts of reality are some times two different things. Heck we even have a few folks in this group who overuse the expression "used to" quite frequently in place of the more correct term "previously" -- i won't give names. But if i did i would start at index zero! When any object is "born" (whether it be a life form, or a planet, or even a class instance) "it" will be zero years old until 1 year of time has passed has passed. If you want to properly describe age you could say a baby who was born five minutes ago is... - 0 millenniums - 0 centuries - 0 decades - 0 years - 0 months - 0 days - 0 hours - 5 minutes - 60*5 seconds - (60*5)*1000 millisecond - crikey i'm tired! Just because Aunt Martha is is too lazy to list out the details that has no effect on reality. YES a newborn is zero years old. YES, a newborn is zero months old, ...an so on. -- http://mail.python.org/mailman/listinfo/python-list