This is false. Both operations are O(1) (constant), and list access will typically be slightly faster:
from timeit import timeit
L = [0 for i in range(10**8)]
D = {i:0 for i in range(10**8)}
%timeit L[9999999]
%timeit D[9999999]
Results:
35.6 ns ± 3.03 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
52.1 ns ± 2.76 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…