From: Kevin M. <qk...@lm...> - 2001-07-16 15:00:31
|
Is there anyway to find out the type of an object? E.g. >>> a = 1 >>> a.isa(int) 1 _________________________________________________ Name/Title : Kevin McNamee, Software Consultant Phone : +46 13 32 1165 E-Mail : kev...@er... |
From: D-Man <ds...@ri...> - 2001-07-16 16:19:32
|
On Mon, Jul 16, 2001 at 05:00:19PM +0200, Kevin McNamee wrote: | Is there anyway to find out the type of an object? E.g. | | >>> a = 1 | >>> a.isa(int) | 1 >>> a=1 >>> type( a ) <jclass org.python.core.PyInteger at 6284031> >>> import types >>> print type(a) == types.IntType 1 >>> print a.__class__ org.python.core.PyInteger >>> print isInstance( a , types.IntType ) Traceback (innermost last): File "<console>", line 1, in ? NameError: isInstance >>> [ aside : Hey, where'd "isInstance" go? ] Check out the 'types' module too. That is good for built-in types which, in CPython but not Jython, are different from class instances. The isInstance function is better because it works with classes too. The only problem with it is I don't know what object to pass in as the "class" of the built-in types. (Also it doesn't seem to be a built-in function in Jython) HTH, -D |
From: Ype K. <yk...@xs...> - 2001-07-16 17:31:56
|
Kevin, >Is there anyway to find out the type of an object? E.g. > >>>> a = 1 >>>> a.isa(int) >1 Apart from instanceof() (other post) you can also use: type(a) == type(1) Ype |
From: D-Man <ds...@ri...> - 2001-07-16 17:36:14
|
On Mon, Jul 16, 2001 at 07:37:04PM +0100, Ype Kingma wrote: | Kevin, | | >Is there anyway to find out the type of an object? E.g. | > | >>>> a = 1 | >>>> a.isa(int) | >1 | | Apart from instanceof() (other post) you can also use: Heh, too much Java for you too :-). 'instanceof' is a builtin operator in Java, not Python. -D |
From: Ype K. <yk...@xs...> - 2001-07-16 19:33:23
|
D-, >On Mon, Jul 16, 2001 at 07:37:04PM +0100, Ype Kingma wrote: >| Kevin, >| >| >Is there anyway to find out the type of an object? E.g. >| > >| >>>> a = 1 >| >>>> a.isa(int) >| >1 >| >| Apart from instanceof() (other post) you can also use: > >Heh, too much Java for you too :-). > >'instanceof' is a builtin operator in Java, not Python. <poco a poco piu agitato> Oops :( , I think I have done too much thread scheduling lately: notify(), notifyAll() and wait() have almost the same meaning. This instanceof thing bit me a few times already. Now, who added the colon to the if, while, for, def, class, _and_ try statements? Wasn't that the same guy who designed the Python threads to be "loosely based on Java"? The guy who seems to have said that JPython could not be done? </poco> And all that in _my_ favourite programming language? Ype |