Python Gotcha with Octal Numbers
philh at comuno.freeserve.co.uk
Fri Feb 22 09:58:05 EST 2002
On 22 Feb 2002 04:06:42 -0800, Clive Page <cgp at le.ac.uk> wrote:
>Philip Swartzleonard <starx at pacbell.net> wrote in message news:<Xns91B6DFD6A36CDRASXnewsDFE1 at 188.8.131.52>...
>> Steve has mentioned that UNIX people are used to it... i think it's a
>> little deeper than that, b'cause as far as i know, _every_ programming
>> language that has ever supported octal does it this way...
>Not quite all of them. Fortran (at least since Fortran90) allows the
>forms O"01234" or O'1234' i.e. an upper-case O and a quoted string of
>digits (but they are only allowed in data statements, unfortunately).
>Prior to Fortran90 there was no _standard_ way of expressing octal
>constants, but lots of vendors had their own extensions. But I don't
>recall ever coming across anything as error-prone as the C notation
>with a leading zero. Fortran is a much safer language than C; I
>recommend it as the nearest thing to a compiled form of Python. :-)
I like the way Smalltalk does it: BrN
Where B is a base, 2 to 36, and N is a number in that base, e.g:
2r11110000, 8r377, 16rFF, etc.
===== Philip Hunt ===== philh at comuno.freeserve.co.uk =====
Herbivore, a zero-effort email encryption system. Details at:
More information about the Python-list