Отказ от ответственности: Да, я понимаю, что то, что я предлагаю, является сумасшедшим, у меня есть очень особый (ab) вариант использования.
Внутри конкретного исполнителя я хочу, чтобы словарные литералы оценивались в упорядоченные словари, поэтому я могусохранить исходный порядок из кода exec'd.
Я пытался заменить __builtin __. dict до exec (очень тщательно его восстанавливать после), однако это не влияет на литералы dict, только сам вызов dict.
>>> import __builtin__
>>> __builtin__.dict = list
>>> exec "a={}"
>>> a
{}
>>> exec "a=dict()"
>>> a
[]
Очевидно, что есть модуль dis, но это ядро сайта с орбитального подхода.
Есть ли какой-то другой способ, которым я могу подключиться к оценке литералов dict и изменить то, чтобывает?
PS для Python2.6