Мало того, что микрооптимизация обычно не имеет смысла вообще, я нахожу это особенно трудным и загадочным для Питона в частности. Это очень легко сделать ваш код одновременно медленнее и сложнее. См. этот вопрос переполнения стека , где приведен пример, в котором самые простые, ясные и самые короткие решения Python также оказались самыми быстрыми.
Как показали другие тесты, разница в скорости между двумя вариантами довольно мала. Что меньше, так это семантическая разница. Списки и словари - это не просто две реализации одной и той же концепции, но они предназначены для разных целей. Выберите тот, который лучше подходит для вашего использования.