Python has some unusual performance behaviors. IIRC you can also speed up the performance of your program a lot by assigning intermediate variables instead of referencing properties, for example:
[A.b[i] for i in range(100)]
is a lot slower than:
B = A.b
[B[i] for i in range (100)]