Multi-dimensional list initialization
Chris Angelico
rosuav at gmail.com
Mon Nov 5 03:05:48 EST 2012
On Mon, Nov 5, 2012 at 6:54 PM, Andrew Robinson
<andrew3 at r3dsolutions.com> wrote:
> On 11/04/2012 11:27 PM, Chris Angelico wrote:
>>
>> On Mon, Nov 5, 2012 at 6:07 PM, Chris Rebert<clp2 at rebertia.com> wrote:
>>>>>>
>>>>>> x = None
>>>>>> x.a = 42
>>>
>>> Traceback (most recent call last):
>>> File "<stdin>", line 1, in<module>
>>> AttributeError: 'NoneType' object has no attribute 'a'
>>
>> Python needs a YouGottaBeKiddingMeError for times when you do
>> something utterly insane like this. Attributes of None??!? :)
>>
>> ChrisA
>
> Hmmm? Everything in Python is an object.
> Therefore! SURE. None *does* have attributes! ( even if not useful ones... )
>
> eg: " None.__getattribute__( "__doc__" ) " doesn't produce an error.
Eh, I meant mutating None's attributes, which is just as insane as I said.
> In C, in Linux, at the end of the file "errno.h", where all error codes are
> listed eg:( EIO, EAGAIN, EBUSY, E....) They had a final error like the one
> you dreamed up, it was called "EIEIO"; and the comment read something like,
> "All the way around Elmer's barn".
There's been a collection of those around the place. A few memorable ones:
EMILYPOST: Bad fork()
ETOBACCO: Read on empty pipe
EHORSE: Mount failed
I may be misremembering, but I'm sure the originals can be found at
the other end of a web search.
ChrisA
More information about the Python-list
mailing list