jf...@ms4.hinet.net writes: > MRAB at 2018/12/8 UTC+8 AM10:04:51 wrote: >> Before Python 3, a leading 0 in an integer literal would indicate an >> octal (base 8) number. > > So, the reason is historical. > >> The old form is now invalid in order to reduce the chance of bugs. > > I encounter this problem on trying to do something like this: > eval('03 + 00 + 15') > It takes me some efforts to get rid of those leading zeros:-( > > Hope someday 03 can be accepted as a valid decimal number in Python 3. > > Thank you for explaining. > > --Jach
I'd say we *really* don't want that. We'd have old C programmers (like me) expecting 010 to mean 8, and getting really confused... -- https://mail.python.org/mailman/listinfo/python-list