[Python-Dev] NoneType(None) raises exception

Ethan Furman ethan at stoneleaf.us
Fri Apr 26 01:09:41 CEST 2013

We just fixed NoneType() to return None instead of raising an exception.

Another use-case for calling NoneType is working with ORMs:

result = []
for field in row:
      type = get_type(field)      # returns int, bool, str, NoneType, ...

if field is None, the resulting call is NoneType(None), and since NoneType doesn't take any parameters we get an exception.

Is it worth filing a bug to have NoneType accept one optional argument, which defaults to None, and must be None, else 
raise an exception?

Or should it be:

class NoneType:
     def __new__(cls, *args, **kws):
         return None

Which is basically what my 2.x none() helper function does...


More information about the Python-Dev mailing list