variable/object type recognition ?

for a function I’d like to test wether an argument is a number or a list.
the think is I don’t know the clean way to test wether a var is a list.
…and the isinstance(var, list) returns a :

TypeError: isinstance() arg 2 must be a class, type, or tuple of classes and types

strange, I just copy/paste it from a python doc.

here’s a quick summary test with a silly but working method at the end to recognize lists :

print '---'
a='string'
b=123
c=123.456
d=[1,2,3]
print type(a)
print type(a)==str

print type(b)
print type(b)==int

print type(c)
print type(c)==float

print type(d)
#print type(d)==list # returns False
#print isinstance(d,list) # bug
<b>print str(type(d))=="&lt;type 'list'&gt;"</b> # that's terrible I know. but it works

how do you do that ?
thanks !


import types
 
if type(myvar) == types.ListType :
  ... do list things here ...
 

BTW, if you want to check for specific Blender types, the module Blender.Types is were to find those.

arrrhh thanks.
I had a look to it, but don’t find about lists.