What's the value of "None" between 2.1.1 and 1.5.2
Ozone Hole near South Pole
ozonehole2k at yahoo.com
Thu Nov 29 22:07:42 EST 2001
Hi,
I have written a simulation in python 1.5.2.... It used to work fine.
When I logged on a new machine which has Python 2.1.1 installed, my
simulation
has gone wild. Later on, I figured that out one weird thing about the
value of "None":
In the new machine:
Python 2.1.1 (#1, Nov 11 2001, 18:19:24)
[GCC 2.95.4 20011006 (Debian prerelease)] on linux2
Type "copyright", "credits" or "license" for more information.
>>> a=[3,4,5,7,None,0.2,-4]
>>> print min(a)
None
>>> print max(a)
7
Python 1.5.2 (#1, Sep 30 2000, 18:08:36) [GCC 2.95.3 19991030
(prerelease)] on linux-i386
Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam
>>> a=[3,4,5,7,None,0.2,-4]
>>> print min(a)
-4
>>> print max(a)
None
>>>
It seems to me that "None" means -Inf in 2.2.1 but means "Inf" in
1.5.2. Why do the Python guys change this assumption? In my
calculations, I use "None" to indicate very large estimation error.
Is there any formal symbol for this? I don't really want to fix this
type of bug again whenever Python upgrades....
TIA
More information about the Python-list
mailing list