Types missing from "types"module

Thomas Jollans thomas at jollans.com
Thu Jun 24 11:17:08 EDT 2010


On 06/24/2010 08:29 AM, John Nagle wrote:
> On 6/23/2010 10:08 PM, Stephen Hansen wrote:
>> On Jun 23, 2010, at 9:24 PM, John Nagle<nagle at 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.
> 
>    Ah.  That makes sense.
> 
>    Does the "types" module go away in 3.x, then?

No, because while types like dict, int, and tuple are part of the core
language, other types aren't directly accessible.

>>> import types
>>> dir(types)
['BuiltinFunctionType', 'BuiltinMethodType', 'CodeType', 'FrameType',
'FunctionType', 'GeneratorType', 'GetSetDescriptorType', 'LambdaType',
'MemberDescriptorType', 'MethodType', 'ModuleType', 'TracebackType',
'__builtins__', '__doc__', '__file__', '__name__', '__package__']
>>>





More information about the Python-list mailing list