On Jun 23, 2010, at 9:24 PM, John Nagle <na...@animats.com> wrote: > Here's dir(types), in Python 2.6.5: > > ['BooleanType', 'BufferType', 'BuiltinFunctionType', 'BuiltinMethodType', > 'ClassType', 'CodeType', 'ComplexType', 'DictProxyType', 'DictType', > 'DictionaryType', 'EllipsisType', 'FileType', 'FloatType', 'FrameType', > 'FunctionType', 'GeneratorType', 'GetSetDescriptorType', 'InstanceType', > 'IntType', 'LambdaType', 'ListType', 'LongType', 'MemberDescriptorType', > 'MethodType', 'ModuleType', 'NoneType','NotImplementedType', 'ObjectType', > 'SliceType', 'StringType', 'StringTypes', 'TracebackType', 'TupleType', > 'TypeType', 'UnboundMethodType', 'UnicodeType', 'XRangeType', '__builtins__', > '__doc__', '__file__', '__name__', '__package__'] > > Seems to be missing SetType, FrozenSetType, BytesType, and > ByteArrayType. Anything else missing? > > (Arguably, "bytes" isn't really distinguished until 3.x, but > still...)
IIUC, since Python 2.2ish you can't treat the types module as comprehensive. It exists as a remnant from the time when there was a difference between types and classes. Sets and the recent additions exist solely in this new world where we just isinstance(blah, set) or issubclass or whatnot. --Stephen via iPad -- http://mail.python.org/mailman/listinfo/python-list