[issue15223] datetime instances lack __module__ attribute

2013-06-23 Thread Alexander Belopolsky

Changes by Alexander Belopolsky :


--
resolution:  -> invalid
status: open -> closed

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15223] datetime instances lack __module__ attribute

2012-11-12 Thread Eric Snow

Changes by Eric Snow :


--
nosy: +eric.snow

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15223] datetime instances lack __module__ attribute

2012-07-02 Thread Amaury Forgeot d'Arc

Amaury Forgeot d'Arc  added the comment:

In PyPy, datetime.py is a pure Python module (similar to the one in 3.x, but 
without the _datetime acceleration module).  So comparison with CPython is not 
relevant here.

In CPython, __module__ is not an attribute of the type, but a property: it is 
defined in the 'type' object.  The situation is similar to the following script 
(2.x syntax); the "foo" attribute can be found on the class, but not on 
instances of the class.

class Type(type):
foo = 42
class Datetime:
__metaclass__ = Type
print Datetime.foo
print Datetime().foo

This is a good thing sometimes: for example 'str' has a __dict__ (containing 
methods) but strings don't have a __dict__ -- storage is optimized and only has 
an array of chars.  In this case you wouldn't want the class __dict__ be 
returned instead.

--
nosy: +amaury.forgeotdarc

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15223] datetime instances lack __module__ attribute

2012-06-29 Thread Chris Jerdonek

Chris Jerdonek  added the comment:

datetime.__dict__ is another attribute that behaves this way (i.e. doesn't 
exist for instances in CPython but does for PyPy).

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15223] datetime instances lack __module__ attribute

2012-06-29 Thread Arfrever Frehtes Taifersar Arahesis

Changes by Arfrever Frehtes Taifersar Arahesis :


--
nosy: +Arfrever

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15223] datetime instances lack __module__ attribute

2012-06-29 Thread Chris Jerdonek

Chris Jerdonek  added the comment:

Thanks.  I suspected that might be the case.  Then the question becomes whether 
failing to fall back to the class attribute is the desired behavior, and if 
not, to update the documentation accordingly.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15223] datetime instances lack __module__ attribute

2012-06-29 Thread R. David Murray

R. David Murray  added the comment:

This is true for most (all?) CPython classes that are implemented in C.  For 
example io.StringIO instances do not have a __module__ attribute either.

--
nosy: +r.david.murray

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15223] datetime instances lack __module__ attribute

2012-06-29 Thread Chris Jerdonek

Changes by Chris Jerdonek :


--
versions: +Python 2.7 -Python 3.3

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15223] datetime instances lack __module__ attribute

2012-06-29 Thread Chris Jerdonek

Chris Jerdonek  added the comment:

Also, FWIW, in PyPy the behavior is different.  Datetime instances do have the 
__module__ attribute:

Python 2.7.2 (341e1e3821fff77db3bb5cdb7a4851626298c44e, Jun 09 2012, 14:24:11)
[PyPy 1.9.0] on darwin
Type "help", "copyright", "credits" or "license" for more information.
And now for something completely different: ``pypy is the nuclear fusion of
programming language implementation (pedronis)''
 from datetime import datetime
 datetime.__module__
'datetime'
 d = datetime(2000, 1, 1)
 d.__module__
'datetime'

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15223] datetime instances lack __module__ attribute

2012-06-29 Thread Chris Jerdonek

Changes by Chris Jerdonek :


--
versions: +Python 3.3

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue15223] datetime instances lack __module__ attribute

2012-06-29 Thread Chris Jerdonek

New submission from Chris Jerdonek :

Instances of datetime.datetime don't seem to have the '__module__' attribute 
even though the datetime class itself does.

This seems to contradict Section 3.2 of the Python documentation about the 
standard type hierarchy (in the subsection called "Class instances"): 
http://docs.python.org/dev/reference/datamodel.html#the-standard-type-hierarchy

"A class instance has a namespace implemented as a dictionary which is the 
first place in which attribute references are searched. When an attribute is 
not found there, and the instance’s class has an attribute by that name, the 
search continues with the class attributes."

Instances of other classes defined in the standard library do have the 
attribute.

The session below illustrates the issue:

Python 3.3.0a4 (v3.3.0a4:7c51388a3aa7, May 30 2012, 16:58:42) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from datetime import datetime
>>> datetime.__module__
'datetime'
>>> d = datetime(2000, 1, 1)
>>> d.__class__ 

>>> d.__module__
Traceback (most recent call last):
  File "", line 1, in 
AttributeError: 'datetime.datetime' object has no attribute '__module__'

--
components: Library (Lib)
messages: 164332
nosy: cjerdonek
priority: normal
severity: normal
status: open
title: datetime instances lack __module__ attribute
type: behavior
versions: Python 3.3

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com