Jython class names
robin at jessikat.fsnet.co.uk
Tue Sep 9 14:00:15 CEST 2003
In article <bjk2fk$38o$07$1 at news.t-online.com>, Peter Otten
<__peter__ at web.de> writes
>Robin Becker wrote:
>> I recently came across a problem with porting to Jython
>> basically the following is prints 1 in CPython, but not in Jython.
>> class C:
>> red = C()
>> print red.__class__.__name__ is 'C'
>> it seems that Jython doesn't intern names in the same way or instances
>> are not constructed in the same way. Is the above test robust or should
>> I always be using == for testing class names?
>I have no Jython around, but I expect the following to always work:
I just tried and wow
>>>> class C: pass
>>>> C().__class__.__name__ is C.__name__
it doesn't work
Jython 2.1 on java1.4.2 (JIT: null)
Type "copyright", "credits" or "license" for more information.
>>> class C: pass
>>> C().__class__.__name__ is C.__name__
>>> C().__class__.__name__ == C.__name__
>(Of course isinstance() will also return True for subclass instances)
We're using the name tests in case we get the class from different
More information about the Python-list