OrderedDict が IronPython で使用できない理由:
import _collections as cl
dir(cl)
OrderedDict を表示しない
OrderedDict が IronPython で使用できない理由:
import _collections as cl
dir(cl)
OrderedDict を表示しない
一部の (ほとんど/すべての?) 実装では、 OrderedDict はパブリックコレクション モジュールの一部であり、内部の_collectionsの一部ではありません。
スニペットを拡張して、より多くの情報を含めました。
import sys
print(sys.version)
import _collections as _cl
print "_collections:", dir(_cl)
import collections as cl
print "collections:", dir(cl)
IronPython の場合、結果は次のようになります。
2.7.4 (IronPython 2.7.4 (2.7.0.40) on .NET 4.0.30319.18331 (32-bit))
_collections: ['__doc__', '__name__', '__package__', 'defaultdict', 'deque']
collections: ['Callable', 'Container', 'Counter', 'Hashable', 'ItemsView', 'Iterable', 'Iterator', 'KeysView', 'Mapping', 'MappingView', 'MutableMapping', 'MutableSequence', 'MutableSet', 'OrderedDict', 'Sequence', 'Set', 'Sized', 'ValuesView', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '_abcoll', '_chain', '_get_ident', '_heapq', '_iskeyword', '_itemgetter', '_repeat', '_starmap', '_sys', 'defaultdict', 'deque', 'namedtuple']
CPython の場合、結果は次のようになります。
2.7.5 (default, May 15 2013, 22:44:16) [MSC v.1500 64 bit (AMD64)]
_collections: ['__doc__', '__name__', '__package__', 'defaultdict', 'deque']
collections: ['Callable', 'Container', 'Counter', 'Hashable', 'ItemsView', 'Iterable', 'Iterator', 'KeysView', 'Mapping', 'MappingView', 'MutableMapping', 'MutableSequence', 'MutableSet', 'OrderedDict', 'Sequence', 'Set', 'Sized', 'ValuesView', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '_abcoll', '_chain', '_class_template', '_eq', '_field_template', '_get_ident', '_heapq', '_imap', '_iskeyword', '_itemgetter', '_repeat', '_repr_template', '_starmap', '_sys', 'defaultdict', 'deque', 'namedtuple']