Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #27175

Re: type(None)()

Date 2012-08-16 09:07 -0700
From Ethan Furman <ethan@stoneleaf.us>
Subject Re: type(None)()
References <502cebf4$0$6905$e4fe514c@news2.news.xs4all.nl>
Newsgroups comp.lang.python
Message-ID <mailman.3376.1345133476.4697.python-list@python.org> (permalink)

Show all headers | View raw


Hans Mulder wrote:
> On 8/08/12 04:14:01, Steven D'Aprano wrote:
>> NoneType raises an error if you try to create a second instance. bool
>> just returns one of the two singletons (doubletons?) again.
>>
>> py> type(None)()
>> Traceback (most recent call last):
>>   File "<stdin>", line 1, in <module>
>> TypeError: cannot create 'NoneType' instances
> 
> Why is that?

An oversight, and until a few months ago nobody had complained loud 
enough.  ;)


> Why doesn't it just return an existing instance of the type,
> like bool, int, str and other built-in non-mutable types do?

In 3.3 it now does.

~Ethan~

Back to comp.lang.python | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

type(None)() Hans Mulder <hansmu@xs4all.nl> - 2012-08-16 14:47 +0200
  Re: type(None)() Laszlo Nagy <gandalf@shopzeus.com> - 2012-08-16 14:54 +0200
  Re: type(None)() Chris Angelico <rosuav@gmail.com> - 2012-08-16 23:37 +1000
  Re: type(None)() Ian Kelly <ian.g.kelly@gmail.com> - 2012-08-16 07:56 -0600
  Re: type(None)() Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2012-08-16 13:58 +0000
    Re: type(None)() Stefan Behnel <stefan_ml@behnel.de> - 2012-08-16 17:31 +0200
    Re: type(None)() Stefan Behnel <stefan_ml@behnel.de> - 2012-08-16 17:44 +0200
    Re: type(None)() Ethan Furman <ethan@stoneleaf.us> - 2012-08-16 09:06 -0700
  Re: type(None)() Robert Kern <robert.kern@gmail.com> - 2012-08-16 15:56 +0100
  Re: type(None)() MRAB <python@mrabarnett.plus.com> - 2012-08-16 16:13 +0100
  Re: type(None)() Ethan Furman <ethan@stoneleaf.us> - 2012-08-16 09:07 -0700

csiph-web